影子DOM

定義

影子DOM的規(guī)范草案能夠使得一些DOM節(jié)點(diǎn)在特定范圍內(nèi)可見欧募,而在網(wǎng)頁的DOM樹中卻不可見温圆,但是網(wǎng)頁渲染的結(jié)果中包含了這些節(jié)點(diǎn)置鼻,這就使得封裝變得容易很多圆裕。

image.png

應(yīng)用

HTML5支持了很多新的特性,例如對視頻逆趣、音頻的支持津肛,讀者會發(fā)現(xiàn)這些元素其實(shí)是由很復(fù)雜的控制界面組成,這些界面也是使用HTML元素編寫汗贫,但是在DOM樹中身坐,你無法找到相應(yīng)的節(jié)點(diǎn),這其實(shí)也是使用了影子DOM的思想落包。

事件處理

因?yàn)橛白覦OM的子樹在整個(gè)網(wǎng)頁的DOM樹中不可見部蛇,那么事件是如何處理的呢?
事件中需要包含事件目標(biāo)咐蝇,這個(gè)目標(biāo)當(dāng)然不能是不可見的DOM節(jié)點(diǎn)涯鲁,所以事件目標(biāo)其實(shí)就是包含影子DOM子樹的節(jié)點(diǎn)對象。
事件捕獲的邏輯沒有發(fā)生變化,在影子DOM子樹內(nèi)也會繼續(xù)傳遞抹腿。
當(dāng)影子DOM子樹中的事件向上冒泡的時(shí)候岛请,WebKit會同時(shí)向整個(gè)文檔的DOM上傳遞該事件,以避免一些很奇怪的行為警绩。

創(chuàng)建

<html>
    <body>
        <div id="div"></div>
        <script type="text/javascript">
          window.onload=function(){
            var adiv=document.getElementById("div");
            //var root=adiv.webkitCreateShadowRoot();
            let root = adiv.attachShadow({ mode: 'open' });
            var shadowImg=document.createElement("img");
            shadowImg.src="apic.png";
            root.appendChild(shadowImg);
            var shadowDiv=document.createElement("div");
            shadowDiv.innerHTML="This is a div from shadow dom!";
            root.appendChild(shadowDiv);
         }
        </script>
       </body>
    </html>

鏈接

https://developer.mozilla.org/zh-CN/docs/Web/Web_Components/Using_shadow_DOM

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末崇败,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子肩祥,更是在濱河造成了極大的恐慌后室,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件混狠,死亡現(xiàn)場離奇詭異岸霹,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)将饺,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進(jìn)店門贡避,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人予弧,你說我怎么就攤上這事刮吧。” “怎么了桌肴?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵皇筛,是天一觀的道長琉历。 經(jīng)常有香客問我坠七,道長,這世上最難降的妖魔是什么旗笔? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任彪置,我火速辦了婚禮,結(jié)果婚禮上蝇恶,老公的妹妹穿的比我還像新娘拳魁。我一直安慰自己,他們只是感情好撮弧,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布潘懊。 她就那樣靜靜地躺著,像睡著了一般贿衍。 火紅的嫁衣襯著肌膚如雪授舟。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天贸辈,我揣著相機(jī)與錄音释树,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛奢啥,可吹牛的內(nèi)容都是我干的秸仙。 我是一名探鬼主播,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼桩盲,長吁一口氣:“原來是場噩夢啊……” “哼寂纪!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起正驻,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤弊攘,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后姑曙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體襟交,經(jīng)...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年伤靠,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了捣域。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,137評論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡宴合,死狀恐怖焕梅,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情卦洽,我是刑警寧澤贞言,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站阀蒂,受9級特大地震影響该窗,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蚤霞,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一酗失、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧昧绣,春花似錦规肴、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至贪绘,卻和暖如春兑牡,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背兔簇。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工发绢, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留硬耍,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓边酒,卻偏偏與公主長得像经柴,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子墩朦,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 創(chuàng)建影子DOM坯认,createShadowRoot()。影子dom能將內(nèi)部的節(jié)點(diǎn)信息封裝起來氓涣,例如video與aut...
    前端大魔王閱讀 793評論 0 0
  • ??DOM 1 級主要定義的是 HTML 和 XML 文檔的底層結(jié)構(gòu)劳吠。 ??DOM2 和 DOM3 級則在這個(gè)結(jié)構(gòu)...
    霜天曉閱讀 1,422評論 1 3
  • DTD 介紹 DTD(Document Type Definition 文檔類型定義)是一組機(jī)器可讀的規(guī)則引润,它們定...
    lio_zero閱讀 2,586評論 0 9
  • 翻譯自:https://github.com/dojo/framework/blob/master/docs/en...
    blocklang閱讀 195評論 0 1
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML標(biāo)準(zhǔn)痒玩。 注意:講述HT...
    kismetajun閱讀 27,424評論 1 45