a级毛片免费全部播放-a级毛片免费观看在线播放-a级毛片免费观看网站-a级毛片免费看-国产成人精品在视频-国产成人精品在线

歡迎來到培訓(xùn)無憂網(wǎng)!

全國切換

咨詢熱線 400-001-5729

位置:培訓(xùn)無憂網(wǎng) > 新聞資訊 > 電腦/IT > web前端 >  web前端培訓(xùn)DOM事件流知識講解

web前端培訓(xùn)DOM事件流知識講解

來源:培訓(xùn)無憂網(wǎng) 發(fā)布人:云朵

2022-03-10 14:17:41|已瀏覽:201次

web前端培訓(xùn)DOM事件流知識講解

web前端培訓(xùn)基礎(chǔ)知識:DOM事件流

      DOM(文檔對象模型)結(jié)構(gòu)是一個樹型結(jié)構(gòu),當(dāng)一個HTML元素產(chǎn)生一個事件時,該事件會在元素節(jié)點與根結(jié)點之間的路徑傳播,路徑所經(jīng)過的結(jié)點都會收到該事件,這個傳播過程可稱為DOM事件流。

web前端培訓(xùn)中要知道DOM 事件流會有 3 個階段:

      事件捕獲階段、確定目標(biāo)階段、事件冒泡階段。

      事件傳播的順序?qū)?yīng)瀏覽器的兩種事件流模型:捕獲型事件流和冒泡型事件流。

事件捕獲階段:

      事件的傳播是從最不特定的事件目標(biāo)到最特定的事件目標(biāo)。即從 DOM 樹的根到葉子,也就是從document節(jié)點開始一層一層向下傳播,直到尋找到觸發(fā)事件的元素。

確定目標(biāo)階段:

      通過捕獲確定具體觸發(fā)事件的元素,之后進行處理事件。

事件冒泡階段:

      事件的傳播是從最特定的事件目標(biāo)到最不特定的事件目標(biāo)。即從 DOM 樹的葉子到根,也就是我們從觸發(fā)事件的元素一層一層向外傳遞事件,直到document節(jié)點。

      比如在div元素在觸發(fā)click事件時,該事件的捕獲階段最先開始,從Document節(jié)點開始逐漸向下傳播,直到div元素,事件進入目標(biāo)階段處理事件,在目標(biāo)階段結(jié)束之后,事件由div元素開始事件的冒泡階段,一層一層向外直到Document節(jié)點為止。總的來說捕獲階段是從里到外,冒泡階段是從里向外。

在如下代碼中,點擊時彈出各自的id名稱。

      <div id="box1" style="background-color: red;"> 

      <div id="box2" style="background-color: yellow;"> 

      <div id="box3" style="background-color: yellowgreen;"></div> 

      </div> 

      </div> 

Js代碼為:

      var oDiv = document.getElementsByTagName('div') 

      function fun(){ 

      alert(this.id); 

      } 

      oDiv[0].addEventListener('click',fun) 

      oDiv[1].addEventListener('click',fun) 

      oDiv[2].addEventListener('click',fun) 

      當(dāng)我們點擊box3時,彈出順序為box3 、box2、box1。

      我們來分析一下過程,在點擊事件發(fā)生時,開始進行事件捕獲,從根節(jié)點document開始根據(jù)結(jié)構(gòu)一層一層往里查找,到html元素,到body元素,再到box1元素,再到box2元素,再到box3元素,此時找到了觸發(fā)事件的元素,捕獲階段結(jié)束。之后進入確認(rèn)目標(biāo)階段,開始處理事件,彈出box3。處理事件完成后將事件根據(jù)結(jié)構(gòu)依次傳遞給父元素,當(dāng)傳遞到box2元素時,發(fā)現(xiàn)box2有同類型的事件,所以觸發(fā)box2的點擊事件彈出box2,再向外傳遞給box1元素,同理box1有同類型的事件,彈出box1.

web前端培訓(xùn)之阻止冒泡:

      如果你感覺冒泡機制影響了你的代碼,就可以進行阻止冒泡。

      標(biāo)準(zhǔn)瀏覽器:ev.stopPropagation();(ev為事件對象)

      Ie瀏覽器:ev.cancelBubble = true;(ev為事件對象)

      例如在上述代碼中只想讓box3觸發(fā)點擊事件,我們就可以給box3添加事件時寫上

      oDiv[2].onclick = function (ev){ 

      var ev = window.event || ev;  

      ev.stopPropagation ? ev.stopPropagation() : ev.cancelBubble = true;

      注:尊重原創(chuàng)文章,轉(zhuǎn)載請注明出處和鏈接 http://m.dedgn.cn/news-id-24766.html 違者必究!部分文章來源于網(wǎng)絡(luò)由培訓(xùn)無憂網(wǎng)編輯部人員整理發(fā)布,內(nèi)容真實性請自行核實或聯(lián)系我們,了解更多相關(guān)資訊請關(guān)注web前端頻道查看更多,了解相關(guān)專業(yè)課程信息您可在線咨詢也可免費申請試課。關(guān)注官方微信了解更多:150 3333 6050

留下你的信息,課程顧問老師會一對一幫助你規(guī)劃更適合你的專業(yè)課程!
  • 姓名:

  • 手機:

  • 地區(qū):

  • 想學(xué)什么:

  • 培訓(xùn)無憂網(wǎng)
免 費 申 請 試 聽
提交申請,《培訓(xùn)無憂網(wǎng)》課程顧問老師會一對一幫助你規(guī)劃更適合你的專業(yè)課程!

主站蜘蛛池模板: 午夜毛片不卡高清免费 | 国产成人精品日本亚洲专区6 | 性欧美videos精品 | 99亚洲 | 国产乱子伦露脸对白在线小说 | 色狠狠色综合吹潮 | 农村寡妇一级毛片免费看视频 | 日韩成人午夜 | 日韩美女视频在线观看 | 国产成人精品高清在线 | 国产成人精品日本亚洲专 | 亚洲依依成人综合在线网址 | a级一级毛片 | 久草亚洲视频 | 欧美成人毛片一级在线 | 欧美成人免费午夜全 | 久久中文字幕在线观看 | 久久精品视频免费观看 | 日韩女人做爰大片 | 日韩免费三级 | 在线观看中文字幕一区 | 亚洲国产日韩综合久久精品 | 欧美高清videossex19 | 国产三级久久久精品三级 | 久久久久亚洲日日精品 | 欧美日本一道道一区二区三 | 国产欧美日韩综合二区三区 | 久艹在线视频 | 99视频在线播放 | 男人天堂新地址 | 日韩经典一区 | 7ass欧美| 久久久久久免费精品视频 | 狠狠色丁香婷婷久久综合考虑 | 欧美综合精品一区二区三区 | 综合自拍亚洲综合图区美腿丝袜 | 免费一级毛片在级播放 | 亚洲精品在线播放视频 | 成年人毛片 | 欧美精品成人一区二区视频一 | 三级久久|