JavaScript事件委托技術(shù)實例分析
本文實例分析了JavaScript事件委托技術(shù)。分享給大家供大家參考。具體分析如下:
如果一個整體頁面里有大量的按鈕.我們就要為每一個按鈕綁定事件處理程序.這樣就會影響性能了.
首先每個函數(shù)都是對象,對象就會占用很多內(nèi)存.內(nèi)存中的對象越多,性能就越差.
其次,dom訪問次數(shù)增多,就會導(dǎo)致延遲加載頁面.事實上,從如何來利用好事件處理程序,還是有很好的解決方案的.
事件委托:
對事件處理程序過多的問題解決的方案就是事件委托技術(shù).
事件委托技術(shù)利用了事件冒泡.只需指定一個事件處理程序.
我們可以為某個需要觸發(fā)事件的父元素來綁定事件處理程序.
<ul id="mylist"> <li id="li_1">sdsdsd</li> <li id="li_2">sdsdsd</li> <li id="li_3">sdsdsd</li> </ul>
現(xiàn)在我們要為這3個li綁定事件處理程序..
只需要在ul綁定事件處理程序.
obj.eventHandler($("mylist"),"click",function(e){
e = e || window.event;
switch(e.target.id){
//大家應(yīng)該還記得target是事件目標(biāo),
//只要點擊了事件的目標(biāo)元素就會彈出相應(yīng)的alert.
case "li_1":
alert("li_1");
break;
case "li_2":
alert("li_2");
break;
case "li_3":
alert("li_3");
break
}
})
如果在一個復(fù)雜的web應(yīng)用程序中,.這種事件委托是非常實用的.
如果不采用這種方式的話,一個一個去綁定那就是數(shù)不清的事件處理程序.
希望本文所述對大家的javascript程序設(shè)計有所幫助。
相關(guān)文章
網(wǎng)絡(luò)復(fù)制內(nèi)容時常用的正則+editplus
有時侯我們在拷貝網(wǎng)頁上的內(nèi)容的時候,總是有一些,開頭的數(shù)字,需要替換掉2006-11-11
JavaScript實現(xiàn)的數(shù)字與字符串轉(zhuǎn)換功能示例
這篇文章主要介紹了JavaScript實現(xiàn)的數(shù)字與字符串轉(zhuǎn)換功能,涉及javascript數(shù)字、字符串等運算與轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下2017-08-08
JavaScript代碼調(diào)試方法實例小結(jié)
這篇文章主要介紹了JavaScript代碼調(diào)試方法,結(jié)合實例形式總結(jié)分析了JavaScript錯誤信息的處理與代碼調(diào)試相關(guān)操作技巧,需要的朋友可以參考下2019-01-01
BootStrap中關(guān)于Select下拉框選擇觸發(fā)事件及擴展
Select下拉框的問題,想在選擇一個選項后,前臺顯示做出變動,并且知道選擇的是第幾個選項。 怎么解決這個問題呢?下面小編給大家?guī)砹薆ootStrap中關(guān)于Select下拉框選擇觸發(fā)事件及擴展,需要的朋友參考下吧2016-11-11

