用$(document).on('click','#XX',function(){...})
为元素添加点击事件 结果导致事件会执行多次 。
出现这种情况是因为每点击一下document
就会绑定一遍事件,click
事件进行了累加绑定,每调用一次,便增加一次绑定,所以导致触发多次事件。
解决方法:
每次绑定前先取消上次的绑定,在这个事件绑定的前面紧挨着加上off
或者unbind
。
$('#XX').off('click').click(function () {
...
});
或者
$('#XX').unbind('click').click(function () {
...
});