Jquery on("click") 方法绑定事件后执行多次解决办法


 项目遇到过使用js动态加载内容,同时需要对加入的内容绑定点击事件的,当时想想了想可以使用内联的onclick 来实现,后来没有这样做,使用的是 on(‘click’,function(){}) ,然而使用on方法的时候就发现,on 对同一个元素多次绑定同一个事件的时候,这个事件就会执行多次。

 

 1 $(function(){  2         $(".add").click(function(eve){  3             $(".btn-area").append("<button class='test-btn'>test button</button>");  4 
 5             //$(".test-btn").off("click");
 6             //$(".test-btn").unbind("click");
 7             //$(".test-btn").unbind(); //去掉所有绑定事件
 8 
 9             $(".test-btn").on("click",function(){ 10                 console.log("test button ....."); 11  }); 12  }); 13 });

在点击add按钮的添加测试按钮,测试按钮绑定点击事件,会出现执行多次的异常,

遇到这种情况需要在每次绑定事件之前,对该事件解绑,也就是

 $(“.test-btn”).off(“click”); //解除绑定点击事件

 $(".test-btn").unbind("click");//移除绑定点击事件

$(".test-btn").unbind(); //移除所有绑定事件

 

##如何可以的情况下,可以使用jquey的  $.click(function(){})

##用此种方法绑定的事件在测试中未出现多次绑定的情况,

##推测测可能是对单个对象使用会覆盖原先的执行事件。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM