我通过 addClass 添加了一个类。我为该添加的类提供了一个 onclick 函数。然而,jQuery 忽略了我为该类创建的单击函数。
我已经在 JSFIDDLE 上测试过它 here
<style type="text/css">
.openInfo:hover{color:red}
.closeInfo:hover{color:blue}
</style>
<div class="openInfo">OPEN</div>
<script>
$('.openInfo') //executes correctly
.click(function() {
$(this).text("CLOSE");
$(this).addClass('closeInfo');
$(this).removeClass('openInfo');
});
$('.closeInfo') //ignored
.click(function() {
$(this).text("OPEN");
$(this).addClass('openInfo');
$(this).removeClass('closeInfo');
});
</script>
顺便说一句,由于某种原因,如果我使用 1.5.2,则代码没有可以在 jsfiddle 上运行?! 那一定是 jsfiddle bug 对吧?因为我至少在我的测试服务器上得到了与 1.5.2 相同的结果。
最佳答案
由于您是动态添加此类的,因此您需要 live不点击:
$('.closeInfo') //ignored
.live("click", function() {
$(this).text("OPEN");
$(this).addClass('openInfo');
$(this).removeClass('closeInfo');
});
关于jQuery — 通过 'addClass' 添加的类上的单击功能没有响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5764908/