五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

關(guān)于DOM0級(jí)處理事件、DOM2級(jí)處理事件、阻止冒泡的一點(diǎn)心得

2023-03-28 18:12 作者:春嬌與誌明  | 我要投稿

什么是事件流?

事件流描述的是從頁(yè)面中接受事件的順序,但有意思的是,微軟(IE)和網(wǎng)景(Netscape)開發(fā)團(tuán)隊(duì)居然提出了兩個(gè)截然相反的事件流概念,IE的事件流是事件冒泡流(event bubbling),而Netscape的事件流是事件捕獲流(event capturing)。

一、什么事DOM 0級(jí)處理事件?

舉個(gè)例子,你直接在DOM 標(biāo)簽上綁定的onClick事件,

<button? onClick={this.func}? id='btn'/>

或者通過document.getElemmentByXX('btn')此類方式獲取到

let btn =?document.getElemmentById('btn')

btn.click = function() { console.log('xxxxx')?}

如上兩種方式,通過給?dom對(duì)象的屬性?賦值函數(shù)的,稱為DOM 0級(jí)事件處理。

DOM 0級(jí)事件規(guī)定的事件流包含3個(gè)階段,事件捕獲階段、處于目標(biāo)階段、事件冒泡階段。首先發(fā)生的事件捕獲為截獲事件提供機(jī)會(huì),然后是實(shí)際的目標(biāo)接收事件,最后一個(gè)階段是事件冒泡階段,可以在這個(gè)階段對(duì)事件做出響應(yīng)。

二、什么事DOM 2級(jí)處理事件?

DOM 2級(jí)事件定義了兩方法:用于處理添加事件和刪除事件的操作:添加事件?addEventListener()?刪除事件?removeEventListener(),通過如下方式添加事件處理的稱為DOM 2級(jí)處理事件。

let btn =?document.getElemmentById('btn')

function showFunc?() {?console.log('xxxxx')?}

btn.addEventListener(click, showFunc, false)?

如上,通過addEventListener()?添加事件的方法稱為DOM 2級(jí)處理事件,需要注意的是,DOM2級(jí)處理事件沒有事件捕獲階段、冒泡階段等。

三、在項(xiàng)目中是否遇到過需要使用e.stopPropagation去阻止冒泡的情況?為什么?

搞清楚DOM 0級(jí)處理事件和DOM 2級(jí)處理事件的區(qū)別,就清楚為什么有時(shí)候需要在項(xiàng)目中使用e.stopPropagation操作了。當(dāng)你給父元素和子元素同時(shí)添加了onClick事件的時(shí)候,如果是通過DOM 0級(jí)處理事件的方式去添加,就一定會(huì)出現(xiàn)冒泡階段同時(shí)觸發(fā)兩個(gè)元素的onClick操作,因此,你就需要在子元素事件中添加e.stopPropagation()方法去組織冒泡。

關(guān)于DOM0級(jí)處理事件、DOM2級(jí)處理事件、阻止冒泡的一點(diǎn)心得的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
赞皇县| 永安市| 永康市| 天全县| 钟祥市| 六安市| 章丘市| 柳河县| 大冶市| 新巴尔虎左旗| 融水| 沙坪坝区| 将乐县| 靖宇县| 漯河市| 周口市| 鄂托克前旗| 峡江县| 西贡区| 顺昌县| 平安县| 光山县| 揭西县| 永清县| 沾化县| 孟连| 奉贤区| 长顺县| 顺平县| 上蔡县| 且末县| 隆回县| 正蓝旗| 搜索| 治县。| 徐水县| 霍邱县| 沽源县| 莱芜市| 津市市| 荥经县|