JS事件處理函式中同時傳遞event物件和其它引數

2021-10-06 13:47:08 字數 634 閱讀 3619

1. html事件處理程式

在最早的html事件處理程式中我們可以直接傳入多個引數:

任務總數

注意:event可以調換前後順序但必須是event關鍵字,不能是e ,如果是e就會報錯:referenceerror: e is not defined

即在html事件處理程式的情況下正確的做法是傳入完整的event名稱

當然也可以不傳遞任何引數,也可以正確列印(也只能是event)

任務總數

不傳遞event的時候也可以傳參 

任務總數

//addeventlistener

任務總數

注意:以上兩種可以傳入e等其它標識了但是不可以不傳參

但是在這兩種事件處理程式中預設只傳入event引數,如果想傳入其它引數,可以採用將方法進行封裝來處理:

任務總數

//addeventlistener

任務總數

總結:

JS事件處理函式

a ele.on function event 相容性好,同乙個元素的同乙個事件上繫結一次,基本等同於解除安裝html行間 this指向dom元素 b obj.addeventlistener 事件型別,處理函式,false 同乙個物件同乙個事件繫結多個處理函式 this指向dom元素 ie9 一下...

js中傳統事件繫結模擬現代事件處理

大家都知道,ie中的現代事件繫結 attachevent 與w3c標準的 addeventlistener 相比存在很多問題,例如 記憶體洩漏,重複新增事件並觸發的時候是倒敘執行等。下面是用傳統事件的方法來處理封裝事件的繫結 新增事件繫結事件 addevent.id 1 事件計數器 function...

JS中函式引數值傳遞和引用傳遞

也許大家對於函式的引數都不會太在意,簡單來說,把函式外部的值複製給函式內部的引數,就和把值從乙個變數複製到另乙個變數一樣。深入研究,你會發現其實沒那麼簡單,這個傳參是要分倆種情況 其實這是個錯誤的說法,ecmascript中所有函式的引數都是按值傳遞的 高程3 原話,之所以這裡說倆種,是因為結合引用...