Jquery 事件委托$(document).on('click') 导致点击事件多次执行

$(document).on('click','#XX',function(){...})为元素添加点击事件 结果导致事件会执行多次 。
出现这种情况是因为每点击一下document就会绑定一遍事件,click事件进行了累加绑定,每调用一次,便增加一次绑定,所以导致触发多次事件。

解决这个问题的办法大致有下面几种:

1.每次绑定前先取消上次的绑定,在这个事件绑定的前面紧挨着加上off或者unbind

$('#XX').off().click(function () {
    ...
});

或者

$('#XX').unbind('click').click(function () {
    ...
});

2.把事件绑定抽离出来,不要让绑定事件每次都执行,只执行一次就可以了。

以上。

你可能感兴趣的:(jquery)