所以我有两个“按钮打开”和“按钮关闭”事件。我有一个按钮,单击时可以从“按钮打开”切换到“按钮关闭”。因此,当我再次单击它时,它应该触发“按钮关闭”事件,但它会再次触发“按钮打开”事件。 演示:jsFidde
这是我的代码:
<a href="#" class="button-open">Button</a>
<script>
$(document).ready(function() {
$(".button-open").click(function() {
$(this).removeClass("button-open").addClass("button-close");
alert("Open Was Clicked");
});
$(".button-close").click(function() {
$(this).removeClass("button-close").addClass("button-open");
alert("Close Was Clicked");
});
});
</script>
最佳答案
使用on()
而不是 click()
,因为您需要绑定(bind)到最初绑定(bind)时尚不存在的元素。
$(document).on('click', '.button-open', function() {
$(this).removeClass("button-open").addClass("button-close");
alert("Open Was Clicked");
});
$(document).on('click', '.button-close', function() {
$(this).removeClass("button-close").addClass("button-open");
alert("Close Was Clicked");
});
<强> DEMO 。
关于javascript - 如何将点击事件绑定(bind)到不同的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12099431/