JQ事件委托导致点击事件多次执行问题

Posted cyeldxlz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JQ事件委托导致点击事件多次执行问题相关的知识,希望对你有一定的参考价值。

起因:最近写网页其中一个模块使用tab切换~每一个tab里都有点击按钮提交事件,刚开始点击提交只执行一次,但是只要我tab切换页面又切换回来该页面,再点击该按钮,我切换了多少次页面,代码提交也会提交很多次;

原因:后来找了一下原因,得知是因为JQ事件委托导致点击事件多次执行的(事件委托是指:利用事件冒泡,指定一个事件处理程序来管理某一类型的所有事件),虽然我页面切换了,但是事件问题还在,所以才会点击一次执行多次;

解决方法:使用off()函数移除之前添加的事件处理程序,就能解决该问题。

eg:

$(document).off().on(‘click‘,‘.recharge  button‘,function(){

  //所执行的代码

});

以上是关于JQ事件委托导致点击事件多次执行问题的主要内容,如果未能解决你的问题,请参考以下文章

防止多次引入js文件导致的重复注册点击事件

事件委托导致重复绑定多次事件

click事件的累加绑定,绑定一次点击事件,执行多次

swift4.0 cell重用导致ReactiveCocoa(RAC) cell上Button点击事件多次触发问题

jquery中click事件的累加绑定,点击一次,执行多次

js 鼠标移入触发事件。多次触发。