jq移除事件问题

用的.on添加的事件监听,想用.off关闭却没有效果,off之后还是能点击,哪里出错了??

 $('.info-bt').on('touchend', function () {});
 $('.info-bt').off('touchend', function () {});
——————————————————————经提点尝试了以下方案,还是可以点击————————————————————————————————

 $('.info-bt').on('touchend', info);
 $('.info-bt').off('touchend', info);

问题根源:事件未注册就进行移除

阅读 1.9k
3 个回答

on和off的回调函数不同,虽然看起来是一样的,按照下面写法才是使用相同回调函数。

var fn=function () {}

 $('.info-bt').on('touchend', fn);
 $('.info-bt').off('touchend', fn);

$('.info-bt').on('touchend', info);
$('.info-bt').off('touchend'); // 可以不指定回调函数,如果指定的话必须和绑定的回调函数一致

事件未注册前就移除事件。。。。唉~~

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题