jQuery實(shí)現(xiàn)在新增加的元素上添加事件方法案例分析
本文實(shí)例講述了jQuery實(shí)現(xiàn)在新增加的元素上添加事件方法。分享給大家供大家參考,具體如下:
最近項(xiàng)目組需要在新增的元素上增加時(shí)間,有人說(shuō)用live方法后來(lái)使用的時(shí)候發(fā)現(xiàn)jQuery沒(méi)有該方法(1.7以上就沒(méi)了)替換為on
除了jquery api官方的例子外還有以下的例子可以在新增的元素上添加事件
$(document).on("click",'#lyysb a',function(){ if(!$(this).hasClass('cur')){ $(this).addClass('cur'); } else { $(this).removeClass('cur'); } });
但是把事件綁定在docunmet就和原來(lái)的live方法沒(méi)有區(qū)別了。原先的live()方法,處理函數(shù)是默認(rèn)綁定在document對(duì)象上不能變的,如果DOM嵌套結(jié)構(gòu)很深,事件冒泡通過(guò)大量祖先元素會(huì)導(dǎo)致較大的性能損失。而使用.on()方法,事件只會(huì)綁定到$()函數(shù)的選擇符表達(dá)式匹配的元素上,因此可以精確地定位到頁(yè)面中的一部分,而事件冒泡的開(kāi)銷也可以減少。
<div id="zkdiv"> <input type="button" value="展開(kāi)" id="zk" class="zk"/> <br> </div>
例如我會(huì)在zkdiv中動(dòng)態(tài)添加多個(gè)class="zk"的dom節(jié)點(diǎn),也想對(duì)動(dòng)態(tài)增加的節(jié)點(diǎn)綁定相同的事件則可以通過(guò)以下代碼實(shí)現(xiàn)
//展開(kāi)按鈕點(diǎn)擊觸發(fā)事件 $("#zkdiv").on("click",".zk",function(){ console.log("on 點(diǎn)擊一次"); }); var html2 = "<input type='button' class='zk' value='新生成的展開(kāi)' />"; $("#zkdiv").append(html2);
這樣一來(lái)處理函數(shù)就綁定到#zkdiv的選擇器上去了,事件冒泡導(dǎo)致的性能損失會(huì)大大降低(使用該方法時(shí)要確保.on前面的選擇器能選擇到對(duì)象 否則不起作用)
更多關(guān)于jQuery相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《jQuery常見(jiàn)事件用法與技巧總結(jié)》、《jQuery常用插件及用法總結(jié)》、《jQuery操作json數(shù)據(jù)技巧匯總》、《jQuery擴(kuò)展技巧總結(jié)》、《jQuery拖拽特效與技巧總結(jié)》、《jQuery表格(table)操作技巧匯總》、《jQuery常見(jiàn)經(jīng)典特效匯總》、《jQuery動(dòng)畫(huà)與特效用法總結(jié)》及《jquery選擇器用法總結(jié)》
希望本文所述對(duì)大家jQuery程序設(shè)計(jì)有所幫助。
- jquery移除、綁定、觸發(fā)元素事件使用示例詳解
- jQuery給動(dòng)態(tài)添加的元素綁定事件的方法
- jQuery動(dòng)態(tài)添加的元素綁定事件處理函數(shù)代碼
- jQuery 判斷元素上是否綁定了事件
- jQuery中對(duì)未來(lái)的元素綁定事件用bind、live or on
- jQuery 綁定事件到動(dòng)態(tài)創(chuàng)建的元素上的方法實(shí)例
- jquery動(dòng)態(tài)添加元素事件失效問(wèn)題解決方法
- JQuery1.8 判斷元素是否綁定事件的方法
- jquery用data方法獲取某個(gè)元素上的事件
- iframe里面的元素觸發(fā)父窗口元素事件的jquery代碼
- JQuery為頁(yè)面Dom元素綁定事件及解除綁定方法
相關(guān)文章
jquery的ajax簡(jiǎn)單結(jié)構(gòu)示例代碼
這篇文章主要介紹了jquery的ajax簡(jiǎn)單結(jié)構(gòu),需要的朋友可以參考下2014-02-02jQuery動(dòng)態(tài)改變多行文本框高度的方法
這篇文章主要介紹了jQuery動(dòng)態(tài)改變多行文本框高度的方法,結(jié)合實(shí)例形式分析了jQuery響應(yīng)鼠標(biāo)事件動(dòng)態(tài)修改頁(yè)面元素屬性的相關(guān)技巧,需要的朋友可以參考下2016-09-09jquery操作checkbox的常用方法總結(jié)【附測(cè)試源碼下載】
這篇文章主要介紹了jquery操作checkbox的常用方法,結(jié)合完整實(shí)例形式總結(jié)分析了jQuery使用checkbox全選、取消、反選等常見(jiàn)操作技巧,并附帶測(cè)試源碼供讀者下載參考,需要的朋友可以參考下2019-06-06jquery實(shí)現(xiàn)商品拖動(dòng)選擇效果代碼(自寫(xiě))
商品拖動(dòng)選擇效果如圖所示,感興趣的朋友已經(jīng)迫不及待想實(shí)現(xiàn)了吧,下面與大家分享下具體的實(shí)現(xiàn)思路及處理程序2013-05-05用jQuery實(shí)現(xiàn)優(yōu)酷首頁(yè)輪播圖
本文主要介紹了用jQuery實(shí)現(xiàn)優(yōu)酷首頁(yè)輪播圖的思路與方法。具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-01-01