多種jQuery綁定事件的實(shí)現(xiàn)方式
最近發(fā)現(xiàn)jQuery一個(gè)對(duì)象的事件可以重復(fù)綁定多次,當(dāng)事件觸發(fā)的時(shí)候會(huì)引起代碼多遍執(zhí)行。
下面是一個(gè)click事件被重復(fù)綁定的示例:
function reg_button_click(){ $("#button).click(function(){ alert("button click"); }); } $(document).ready(function(){ #重復(fù)注冊(cè)3次 reg_button_click(); reg_button_click(); reg_button_click(); #觸發(fā)的時(shí)候 出現(xiàn)3個(gè)alert $('#button').click(); });
下面給出解決方法:
對(duì)于需要重復(fù)綁定的場(chǎng)景,再事件注冊(cè)時(shí)候考慮用先unbind 再bind的方法;或者先off 再on
function reg_button_click(){ $("#button).unbind('click').bind('click',(function(){ alert("button click"); }); } $(document).ready(function(){ #重復(fù)注冊(cè)3次 reg_button_click(); reg_button_click(); reg_button_click(); #觸發(fā)的時(shí)候 出現(xiàn)3個(gè)alert $('#button').click(); });
那jQuery綁定事件的實(shí)現(xiàn)方式有哪些,下面就為大家分享jQuery綁定事件的方法,供大家參考,具體內(nèi)容如下
<html> <head> <meta charset="utf-8" /> <script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script><!--百度CDN--> </head> <body> <input type="text"/> <input type="button" value="button1"/> <script> $(function(){ var text = $(":text"); var button = $(":button"); //調(diào)試器記錄日志 console.log("message"); 如:火狐瀏覽器,打開(kāi)FireBug(按F12) //觸發(fā)單個(gè)事件:兩種方式 button.bind("mouseover",function(){ console.log("移入"); }); button.bind({ "mouseout": function(){ console.log("移出"); } }); //多個(gè)事件:三個(gè)方式 text.bind("dblclick blur",function(){ console.log("雙擊或者失去焦點(diǎn)"); }); text.bind({ "dblclick blur":function(){ console.log("雙擊或者失去焦點(diǎn)"); } }); text.bind({ "dblclick":function(){ console.log("雙擊"); }, blur:function(){ console.log("失去焦點(diǎn)"); } }); //取消事件 text.unbind("dblclick"); //取消單個(gè)事件 //text.unbind("dblclick blur"); //取消多個(gè)事件 //text.unbind(); //取消全部事件 }); </script> </body> </html>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家學(xué)習(xí)jQuery程序設(shè)計(jì)有所幫助。
相關(guān)文章
使用jquery動(dòng)態(tài)加載js文件的方法
這篇文章主要介紹了使用jquery動(dòng)態(tài)加載js文件的方法,需要的朋友可以參考下2014-12-12jquery 操作單選框,復(fù)選框,下拉列表實(shí)現(xiàn)代碼
jquery 操作單選框,復(fù)選框,下拉列表實(shí)現(xiàn)代碼,需要的朋友可以參考下。2009-10-10jQuery插件HighCharts繪制2D柱狀圖、折線圖和餅圖的組合圖效果示例【附demo源碼下載】
這篇文章主要介紹了jQuery插件HighCharts繪制2D柱狀圖、折線圖和餅圖的組合圖效果,結(jié)合實(shí)例形式分析了jQuery使用HighCharts插件同時(shí)繪制折線圖、柱狀圖、餅狀圖組合圖效果的操作步驟與相關(guān)實(shí)現(xiàn)技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2017-03-03addEventListener—jQuery的事件監(jiān)聽(tīng)方法
在Javascript中,事件監(jiān)聽(tīng)是非常重要的,通過(guò)事件監(jiān)聽(tīng),我們可以在用戶執(zhí)行某些操作時(shí)觸發(fā)相應(yīng)的處理程序。最初,Javascript監(jiān)聽(tīng)事件的方式是addEvent。addEvent()比較麻煩,所以jQuery為我們提供了一個(gè)更為便捷的事件監(jiān)聽(tīng)方法:addEventListener。2023-06-06jquery validate.js表單驗(yàn)證入門(mén)實(shí)例(附源碼)
這篇文章主要介紹了jquery validate.js表單驗(yàn)證入門(mén)實(shí)例,為大家提供了jquery validate.js表單驗(yàn)證的源碼,特別適合初學(xué)者學(xué)習(xí)validate.js表單驗(yàn)證,感興趣的小伙伴們可以參考一下2015-11-11一個(gè)小例子解釋如何來(lái)阻止Jquery事件冒泡
事件會(huì)向這個(gè)對(duì)象的父級(jí)對(duì)象傳播,從里到外,直至它被處理(父級(jí)對(duì)象所有同類事件都將被激活),或者它到達(dá)了對(duì)象層次的最頂層2014-07-07