jquery click事件被多次执行?

用jquery绑定一个按钮click事件后,第一次点击后,一切正常,第二次点击,竟然执行两次,以后越来越多。
后来查看文档发现  jquery click  不是替换原有的function ,而是接着添加,所以才会执行次数越来越多。 这有就可以在添加之前先将按钮click函数置空,然后再添加。
解绑定方法   $("...").unbind('click');

自 jQuery 版本 1.7 起,on() 和 off() 方法是在元素上添加和移除事件处理程序的首选方法。

所以也可以写成:

$("...").off("click").on("click",onXXXClick);



在JQM中,如果要对一个按钮添加事件,最好写在pagebeforecreate或pagecreate中,而不要写在"pagebeforeshow"或"pageshow"中。
原因:如果把事件的绑定写在"pageshow"中,因为"pageshow"每次页面显示的时候都会触发,所以这样当一个页面多次显示的时候就会造成一个事件绑定多次的情况。

猜你喜欢

转载自gundumw100.iteye.com/blog/2090073
今日推荐