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