DOM1級問題與DOM2級事件


前幾天有小伙伴問過我一個問題,為什么有DOM 0級事件以及DOM2級事件,但是卻沒有DOM1級事件呢?那我們今天就來說一說DOM的級別問題。
 同時推薦伙伴們可以看看尚學堂有關JavaScript BOM的文章:《細說javascript BOM》

一.DOM0級事件

0級DOM分為兩種

  1. 行內事件:在標簽中寫事件
  2. 元素.on事件名=函數
1.行內
<input type="button" id="btn" value="按鈕" onclick="alert('上海尚學堂,你值得擁有!')">

 

2.元素.on事件名=函數
document.getElementById("btn").onclick = function () {
    alert('上海尚學堂,你值得擁有!');
}

 

二.DOM1級問題

為什么沒有1級DOM?
DOM級別1於1998年10月1日成為W3C推薦標准。1級DOM標准中並沒有定義事件相關的內容,所以沒有所謂的1級DOM事件模型。在2級DOM中除了定義了一些DOM相關的操作之外還定義了一個事件模型 ,這個標准下的事件模型就是我們所說的2級DOM事件模型 
 

三.DOM2級事件

只有一個:監聽方法,有兩個方法用來添加和移除事件處理程序:addEventListener()和removeEventListener()。

它們都有三個參數:第一個參數是事件名(如click);
         第二個參數是事件處理程序函數;
           第三個參數如果是true則表示在捕獲階段調用,為false表示在冒泡階段調用。
 

  • addEventListener():可以為元素添加多個事件處理程序,觸發時會按照添加順序依次調用。
  • removeEventListener():不能移除匿名添加的函數。
document.getElementById("btn").addEventListener("click", function(){alert('上海尚學堂,你值得擁有!')}, false);

 
 
對事件的不同級別的具體區別,還是需要大家了解清楚的,那么下次我們再來聊一聊事件的不同執行階段問題.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM