js事件委託

2021-08-26 12:26:22 字數 668 閱讀 2050

事件委託:利用事件冒泡,只指定乙個事件處理程式,就可以管理某一型別的所有事件。其中包括click,mousedown,mouseup,keydown,keyup,keypress,以click為例:

傳統寫法:

var item1 = document.getelementbyid("gosomewhere");

var item2 = document.getelementbyid("dosomething");

var item3 = document.getelementbyid("sayhi");

eventutil.addhandler(item1, "click", function(event));

eventutil.addhandler(item2, "click", function(event));

eventutil.addhandler(item3, "click", function(event)

其中eventutil.addhandler見

使用事件委託的優點:

1、document物件很快就可以訪問,而且可以在頁面生命週期的任何時間點為他新增事件處理程式。無需等待load事件

2、在頁面中設定事件處理程式所需的時間更少了

3、整個頁面占用的記憶體空間更少,能夠提公升整體效能

js事件委託

乙個ul列表,裡邊有乙個1000個li元素,如何為這1000個li元素新增click事件?function false 參考文章 作為閉包使用的 function 已知ab兩個有序陣列,a陣列長度m,b陣列長度n,請最多迴圈m n次找出a,b陣列中相同的元素 對 事件處理程式過多 問題的解決方案就是...

js事件委託

事件委託 通俗的講把自己應該做的事情交給別人去做,也就是利用冒泡原理,把這個這個事件交給父級或祖先去觸發執行效果。用例項來說。需求是這樣的 滑鼠放到li上對應的li背景變灰。利用事件冒泡實現 ul on mouseover function e 也許有人會說,我們直接給所有li都綁上事件也可以啊,一...

js事件委託

在給多個標籤定義乙個事件的時候我們不會給每個dom都新增乙個事件浪費很多的資源,為此可以使用js的事件委託。在圖靈社群上給事件委託是這樣定義的 事件委託就是事件目標自身不處理事件,把事件委託給父元素或者祖先元素,甚至根元素。這裡註明文章出處 自己寫了乙個demo 給ul下的每個li新增乙個click...