jQuery ≥ 1.7
从 jQuery 1.7 开始,事件 API 已经更新,.bind()
/.unbind()
仍然可用于向后兼容,但首选方法是使用on() / off()函数。下面是现在,
$('#myimage').click(function() { return false; }); // Adds another click event
$('#myimage').off('click');
$('#myimage').on('click.mynamespace', function() { /* Do stuff */ });
$('#myimage').off('click.mynamespace');
jQuery < 1.7
在您的示例代码中,您只是向图像添加另一个单击事件,而不是覆盖前一个:
$('#myimage').click(function() { return false; }); // Adds another click event
两个点击事件都会被触发。
正如人们所说,您可以使用 unbind 删除所有点击事件:
$('#myimage').unbind('click');
如果要添加单个事件然后将其删除(不删除可能已添加的任何其他事件),则可以使用事件命名空间:
$('#myimage').bind('click.mynamespace', function() { /* Do stuff */ });
并仅删除您的活动:
$('#myimage').unbind('click.mynamespace');