註冊事件的兩種方式

2021-10-03 12:35:17 字數 1892 閱讀 9882

element.onclick = function(){}

特點:傳統的註冊方式具有唯一性,即同乙個元素同一事件只能設定乙個函式,如果寫了多個函式,最後乙個函式會把之前的函式都覆蓋掉。

證明:

傳統註冊事件<

/button>

方法監聽註冊事件<

/button>

ie9 attachevent<

/button>

var btns = document.

queryselector

('button');

btns[0]

.onclick

=function()

<

/script>

<

/body>

結果:

傳統註冊事件<

/button>

方法監聽註冊事件<

/button>

var btns = document.

queryselectorall

('button');

btns[0]

.onclick

=function()

btns[0]

.onclick

=function()

<

/script>

<

/body>

結果:第二個函式把前乙個覆蓋掉了

addeventlistener監聽函式:eventtarget.addeventlistener(type,listener[,usecapture]);

其中函式的三個屬性的含義分別是

type:事件型別是字串型別,如』click』、『mouseover』,所以事件都要加單引號,注意這裡不要帶on。

listener:事件處理函式,事件發生時,會呼叫這個函式。

usecapture:可選引數,是乙個boolean型別,預設是false。

下面**是同乙個元素新增了兩個事件處理程式:

傳統註冊事件<

/button>

方法監聽註冊事件<

/button>

var btns = document.

queryselectorall

('button');

btns[1]

.addeventlistener

('click'

,function()

);btns[1]

.addeventlistener

('click'

,function()

)<

/script>

<

/body>

結果:會依次顯示每個監聽事件

在這裡插入描述

10 JS特效 註冊事件的兩種方式

註冊事件的兩種方式 onclick和addeventlistener 為了方便記憶,這裡分三種 呼叫者 事件源 引數1 事件去掉on 引數2 呼叫的函式 引數3 可有可無。沒有預設false。false情況下,支援冒泡。true支援捕獲。addeventlisener中第乙個引數type是click...

Android 廣播註冊兩種方式

兩種註冊型別的區別是 1 第一種不是常駐型廣播,也就是說廣播跟隨activity的生命週期。注意 在activity結束前,移除廣播接收器。2 第二種是常駐型,也就是說當應用程式關閉後,如果有資訊廣播來,程式也會被系統呼叫自動執行。在android下,要想接受廣播資訊,那麼這個廣播接收器就得我們自己...

C 註冊dll的兩種方式

普通註冊 system.diagnostics.process p system.diagnostics.process.start regsvr32 path dicomobjects.ocx 管理員註冊 private bool registerdll string dllpath bool r...