任何能夠成為事件目標的物件(window物件,document物件和所有文件元素物件)都定義了addeventlistener方法
接受3個引數
1:要註冊處理程式的事件型別,是字串,但是不包含字首“on”
2:當指定型別的事件發生時應呼叫的函式
3:布林值,可以忽略傳,true表示將註冊為捕獲事件處理程式
能通過多次呼叫addeventlistener()為同一個物件註冊統一事件型別的多個處理程式函式
當物件上發生事件時,所有該事件型別的註冊處理程式都會按照註冊的順序呼叫,使用相同的引數在同一個物件上多次呼叫addeventlistener是沒用的,處理程式仍然只註冊一次,同時重複呼叫也不會改變呼叫處理程式的順序。
關於IE
attachevent和detachevent的工作原理和addeventlistener和removeeventlistener類似
例外:
1,ie不支援事件捕獲,attachevent和detachevent只有兩個引數
2,第一個引數使用了帶"on"的事件處理程式屬性名
3,attachevent允許相同的事件處理程式函式註冊多次,當特定的事件型別發生時,註冊函式的呼叫次數和註冊次數一樣