用jquery绑定一个按钮click事件后,第一次点击后,一切正常,第二次点击,竟然执行两次,以后累加越来越多。
后来查看文档发现 jquery click 不是替换原有的function ,而是接着添加,所以才会执行次数越来越多。 所以,可以在绑定click函数之前,先解绑或者说是移出以前绑定的click,然后再添加绑定。
解绑定方法 $("...").unbind('click');
$("#id").unbind('click').click(function(){}
$("#id").unbind('click').on("click",function(){})
自 jQuery 版本 1.7 起,on() 和 off() 方法是在元素上添加和移除事件处理程序的首选方法。
所以也可以写成:
$("#id").off("click").on("click",function(){});