特點: 1)在DOM0級事件中,事件名均是以on開頭的(click—>onclick)。 2)DOM0級事件處理程序是在元素的作用域中運行的,也就是說,在事件處理程序中,this引用就是這個元素對象。 3)以這種方式添加的事件處理程序會在事件流的冒泡階段被處理。 4)取消事件冒泡:event.stopPRopagation()/event.cancleBubble = true(此方法為IE中)。 5)刪除事件處理程序,將屬性值設為null即可(btn.onclick=null)。 6)DOM0級事件不支持事件捕獲。 優點:處理事件程序的傳統方式,第四代web瀏覽器至今,所有瀏覽器都支持。 缺點:一個事件處理程序只能對應一個處理函數,同時綁定多個事件時,事件會被覆蓋(這是因為btn.onclick實際上就像一個指針,在執行第一個事件處理程序時它指向了內存中的一個引用,執行第二個事件處理程序時它又會指向另一個內存的引用,最終會指向最后一個事件處理函數的內存引用。)。
特點: 1)存在兩個方法,用于處理制定和刪除事件處理程序的操作(addEventListener和removeEventListener),接受三個參數:事件名稱、事件處理程序的函數和布爾值,布爾值為false表示在事件冒泡階段調用事件處理程序。 2)DOM2級事件處理程序也會依附在元素的作用域中運行。 3) 優點:可同時綁定幾個事件,且不會 被覆蓋; 缺點:不兼容 1)IE不支持DOM2級事件,但是有兩個類似的方法attachEvent()/detachEvent()。 2)attachEvent()/detachEvent()只接受兩個參數,么有最后一個布爾值,該事件只能發生在冒泡階段。
新聞熱點
疑難解答