關於JS繫結事件,基礎

2022-09-13 12:03:10 字數 1467 閱讀 7146

第一種為(dom0):obj.onclick = fn;   

第二種為(dom2):

ie:obj.attachevent(事件名稱,事件函式);

1.沒有捕獲(非標準的ie 標準的ie底下有 ie6到10)

2.事件名稱有on

3.事件函式執行的順序:標準ie-》正序 非標準ie-》倒序

4.this指向window

標準:obj.addeventlistener(事件名稱,事件函式,是否捕獲);

1.有捕獲

2.事件名稱沒有on

3.事件執行的順序是正序

4.this觸發該事件的物件

document.attachevent('onclick', fn2);

document.attachevent('onclick', function() );

是否捕獲 : 預設是false false:冒泡 true:捕獲

document.addeventlistener('click', fn1, false);

document.addeventlistener('click', fn2, false);

注意 ie代表了:非標準ie 和 標準ie

標準代表了:標準ie 和 chrome firefox等....

function bind(obj, evname, fn)  else );

}}bind(document, 'click', fn1);

取消冒泡的手段:event.cancelbubble = true;(不推薦使用)

event.stoppropagation();

第一種:預設冒泡,

第一種:乙個元素上只能繫結乙個同類事件,如果繼續繫結的話,第二個事件函式會覆蓋第乙個

第二種:

attachevent

預設冒泡

addeventlistener

是否捕獲 : 預設是false

第三個引數: false:冒泡

true:捕獲

第二種:乙個元素上可以繫結多個同類事件,它們都會被執行

dom0:想解除事件就相當簡單了,只需要再註冊一次事件,把值設成null

原理就是最後註冊的事件要覆蓋之前的,最後一次註冊事件設定成null,

也就解除了事件繫結。

dom2:removeeventlistener

解除事件語法:btn.removeeventlistener("事件名稱", "事件**", "捕獲/冒泡");

detachevent(ie)

onclick形式:冒泡

attachevent:冒泡

addeventlistener:第三個引數(false:冒泡;true:捕獲)

JS基礎學習四 繫結事件

b 新增事件 b ie attachevent other addeventlistener var button document.getelementbyid buttonid if button.addeventlistener else if button.attachevent b 刪除事...

js事件繫結

事件繫結,常見的是odiv.nclick function 這種方式繫結事件太單一,如果繫結多個,那麼最後乙個事件會覆蓋掉之前的,也就是說只執行最後一次繫結的事件,這裡要說的是addeventlistener方法,和ie下的attachevent方法 html 如下 box son1 son2 介面...

js 事件繫結

事件繫結的方式 1.dom 元素行內繫結 div onclick alert 1 div 2.js on eventtype document.onclick function 3.addeventlistener document.getelementbyid mybtn addeventlist...