Eventhtml
事件對象中target對象和currentTarget對象的區別post
一、target在事件流的目標階段; currentTarget在事件流的捕獲、目標和冒泡階段url
二、event.currentTarget指向事件所綁定的元素;event.target指向事件發生時的元素spa
三、事件真正的發送者是 event.target(可變的(點擊不一樣子元素結果不一樣));註冊偵聽器的是event.currentTarget(不會變).net
四、Google瀏覽器,支持srcElement和target,這兩個標籤本質相同htm
Firefox只支持 target標籤對象
註冊事件偵聽器blog
三種方式爲DOM元素註冊事件處理函數
EventTarget.addEventListener
element.attachEvent()(IE6-8)
HTML屬性
DOM元素屬性
DOM Event接口
屬性:
event.bubbles(只讀) 事件是否在DOM中冒泡
event.cancelable(只讀) 事件是否能夠取消
event.currentTarget(只讀) 當前註冊事件的對象引用(不變化)
即:代碼書寫時綁定事件的DOM元素,當將相同事件處理程序附加到多個元素時,能夠區分被綁事件的元素
event.target(只讀) 事件起源目標的引用(變化)
//IE 6~8 element.attachEvent()綁定事件監聽器,e.srcElement等價於 e.target
var target = e.target || e.srcElement;
event.type(只讀) 事件的類型(不區分大小寫)
event.eventPhase 事件階段常量
0(NONE 沒有事件被處理)、1(CAPTURING_PHASE 捕獲階段)二、(AT_TARGET 目標階段)三、(BUBBLING_PHASE冒泡階段)
方法:
event.initEvent 給被建立的事件初始化某些值
event.preventDefault 取消事件(若該事件可取消)
若事件可取消,則取消該事件,而不中止事件的進一步傳播。
event.stopPropagation 阻止捕獲和冒泡階段中 當前事件的進一步傳播
mousedown--->mouseup--->click
keydown--->keyup--->keypress