我有一个图像,我想禁用点击事件,所以我使用了unbind事件,如下所示
$('#myimage').unbind("click");
但是,请你告诉我为什么点击事件仍然有效?
这是我的代码
$(document).ready(function () {
$('#myimage').unbind("click");
})
$(document).on('click', ' #myimage', function (event) {
alert('i am called');
});
这是我的小提琴
答案 0 :(得分:3)
小提琴中的问题是您的代码块已经在document.ready
处理程序中运行(由于您已选择的设置),因此在绑定事件之前调用unbind()
,因此no event is removed。
要解决实际问题,您需要使用off()
方法的委托形式,因为您最初使用on()
附加了委托事件处理程序,如下所示:
<script>
$(document).ready(function() {
$(document).off('click', '#myimage');
})
$(document).on('click', '#myimage', function(event) {
alert('i am called');
});
</script>
请注意,在这个小提琴的设置中,JS代码被设置为执行为&#39;无包装 - <head>
&#39;