var div = document.getelementsbytagname('div')[0];
div.onclick = function
(e)
chromeiee
window.event
firefox
iechrome
event.target
event.srcelement
event.target
event.srcelement
var
event = e || window.event;
var target = event.target || event.srcelement;
1li>
2li>
3li>
4li>
5li>
6li>
7li>
8li>
9li>
10li>
ul>
var li = document.getelementsbytagname('li');
var len = li.length;
for(var i = 0; i < len; i++)
}script>
這種方法可以輸出順序,但是如果資料過多,或者動態的向裡面新增就不能正常的輸出了
var ul = document.getelementsbytagname('ul')[0];
ul.onclick = function (e)
這種方法減少了for迴圈,節省了效率.這種方法叫事件委託
利用事件冒泡,和事件源物件進行處理
優點:
效能 : 不需要迴圈所有的元素乙個個繫結事件
靈活 : 當有新的子元素時不需要重新繫結事件
js 事件物件 event 事件委託
div.onclick function event event.target 火狐只有這個 event.srcelement ie只有這個 這兩chrome都有 可以用來事件委託 理用事件冒泡,和事件源物件進行處理 優點效能 不需要迴圈所有的元素乙個個繫結事件 靈活 當有新的子元素時不需要重新繫結...
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都綁上事件也可以啊,一...