事件流,事件繫結
主流browser,符合w3c標準,支援冒泡和捕獲
低版本ie,僅支援冒泡
冒泡到window
document
事件繫結/解綁
elem.addeventlistener(evt, func, usecapture)
elem.removeeventlistener(evt, func)
elem.attachevent(onevt, func)
elem.detachevent(onevt, func)
阻止事件流
e.stoppropagation() //阻止傳播(捕獲+冒泡)
(部分也相容了ie)
window.event.cancelbubble //阻止冒泡
阻止預設事件
e.preventdefault()
window.event.returnvalue = false
dom2級事件事件流:
三個階段:捕獲、處於、冒泡
document.getelementbyid('daddy').addeventlistener('click',function(), true); //捕獲階段觸發
document.getelementbyid('child').addeventlistener('click',function(e), false); //冒泡階段觸發
document.getelementbyid('grandchild ').addeventlistener('click',function(), true); //捕獲階段觸發
輸出:daddy, grandchild, child;
target, currenttarget和this
舉個栗子就好明白了
document.getelementbyid('parentnode').addeventlistener('click',function(e).bind(obj))
js事件繫結
事件繫結,常見的是odiv.nclick function 這種方式繫結事件太單一,如果繫結多個,那麼最後乙個事件會覆蓋掉之前的,也就是說只執行最後一次繫結的事件,這裡要說的是addeventlistener方法,和ie下的attachevent方法 html 如下 box son1 son2 介面...
js 事件繫結
事件繫結的方式 1.dom 元素行內繫結 div onclick alert 1 div 2.js on eventtype document.onclick function 3.addeventlistener document.getelementbyid mybtn addeventlist...
js 繫結事件
建立乙個js的繫結事件,而這個需要乙個addeventlistener事件。在js裡不要將事件寫在標籤裡 建立乙個canvas物件,並且繫結物件。發現出現test.html 26 uncaught typeerror cannot read property addeventlistener of ...