我有一个点击事件分配给一个特定类的 div。当点击发生时,该类从 div 中删除。但是,您仍然可以单击 div 并click()
触发事件(即使该类已被删除)。这是一个例子:
HTML:
<div class="clickable">
<p>Click me</p>
</div>
JavaScript/jQuery:
$('.clickable').click(function() {
$(this).removeClass('clickable');
$(this).addClass('not-clickable');
alert('Clicked!');
});
我可以看到类被删除和添加(因为文本的颜色根据我的 CSS 更改)。但是,您仍然可以多次单击 div 并且alert()
仍然会出现。
这似乎也反过来发生。因此,如果我将clickable
类添加到 div,则其中的代码 $('.clickable').click(function() {...});
不会运行(但在视觉上,div 会根据新样式发生变化)。
即使在 jQuery 添加/删除类之后,如何使点击事件与类匹配clickable
?