0

对于某些 html 元素,我需要使用取消绑定或关闭功能删除其他点击功能

但这也仅适用于点击功能,如下所示:

 $("#test").click(function(){
  alert("test1");
  });
  $("#test").unbind('click').click(function(){ // or off
   alert("test2");
  });

但是对于 live ,这不起作用,并且会触发两个警报

 $("#test").live('click',function(){
  alert("test1");
  });
  $("#test").off('click').click(function(){ //unbind
   alert("test2");
  });
4

4 回答 4

4

与之相反的.live().die()http ://api.jquery.com/die/

$("#test").die('click').click(function(){ //unbind
  alert("test2");
});

顺便说一句:.live()自 1.7 起已弃用。但是,如果您使用旧版本的 jQuery,我认为使用它不会有问题。

于 2013-06-05T11:18:35.473 回答
3
 $(document).on('click','#test',function(){
  alert("test1");
  });
于 2013-06-05T11:17:40.880 回答
3

不要使用.live(),因为它已被弃用。

改用.on()

$(document).on('click', '#test', function () {

此外,.off()仅取消绑定与 . 绑定的事件处理程序.on()。有关更多信息,请参阅文档

于 2013-06-05T11:18:14.217 回答
1

从 jQuery 1.7 开始,该.live()方法已被弃用。用于.on()附加事件处理程序。

记住offis to use withondieis to use withlive

于 2013-06-05T11:20:10.997 回答