成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > 簡單介紹HTML5中的文件導入

簡單介紹HTML5中的文件導入

熱門標簽:阜陽企業(yè)外呼系統(tǒng) 南通數(shù)據(jù)外呼系統(tǒng)推廣 外呼系統(tǒng)電話怎么投訴 申請400電話流程簡介 呼和浩特外呼電銷系統(tǒng)排名 地圖標注位置能賺錢嗎 外呼線穩(wěn)定線路 pageadm實現(xiàn)地圖標注 邢臺縣地圖標注app

Template、Shadow DOM及Custom Elements 讓你創(chuàng)建UI組件比以前更容易了。但是像HTML、CSS、JavaScript這樣的資源仍然需要一個個地去加載,這是很沒效率的。

刪除重復依賴也并不簡單。例如,現(xiàn)在加載jQuery UI或Bootstrap就需要為JavaScript、CSS及Web Fonts添加單獨的標簽。如果你的Web 組件應用了多重的依賴,那事情就變得更為復雜。

HTML 導入讓你以一個合并的HTML文件來加載這些資源。
使用HTML導入

為加載一個HTML文件,你需要增加一個link標簽,其rel屬性為import,herf屬性是HTML文件的路徑。例如,如果你想把component.html加載到index.html:

index.html
 

XML/HTML Code復制內(nèi)容到剪貼板
  1. <link rel="import" href="component.html" >    

你可以往HTML導入文件(譯者注:本文將“ the imported HTML”譯為“HTML導入文件”,將“the original HTML”譯為“HTML主文件”。例如,index.html是HTML主文件,component.html是HTML導入文件。)添加任何的資源,包括腳本、樣式表及字體,就跟往普通的HTML添加資源一樣。

component.html
 

XML/HTML Code復制內(nèi)容到剪貼板
  1. <link rel="stylesheet" href="css/style.css">  
  2. <script src="js/script.js"></script>  

doctype、html、 head、 body這些標簽是不需要的。HTML 導入會立即加載要導入的文檔,解析文檔中的資源,如果有腳本的話也會立即執(zhí)行它們。
執(zhí)行順序

瀏覽器解析HTML文檔的方式是線性的,這就是說HTML頂部的script會比底部先執(zhí)行。并且,瀏覽器通常會等到JavaScript代碼執(zhí)行完畢后,才會接著解析后面的代碼。

為了不讓script 妨礙HTML的渲染,你可以在標簽中添加async或defer屬性(或者你也可以將script 標簽放到頁面的底部)。defer 屬性會延遲腳本的執(zhí)行,直到全部頁面解析完畢。async 屬性讓瀏覽器異步地執(zhí)行腳本,從而不會妨礙HTML的渲染。那么,HTML 導入是怎樣工作的呢?

HTML導入文件中的腳本就跟含有defer屬性一樣。例如在下面的示例中,index.html會先執(zhí)行script1.js和script2.js ,然后再執(zhí)行script3.js。

index.html
 

XML/HTML Code復制內(nèi)容到剪貼板
  1. <link rel="import" href="component.html"> // 1.   
  2. <title>Import Example</title>  
  3. <script src="script3.js"></script>        // 4.  

component.html
 

XML/HTML Code復制內(nèi)容到剪貼板
  1. <script src="js/script1.js"></script>     // 2.   
  2. <script src="js/script2.js"></script>     // 3.  

1.在index.html 中加載component.html并等待執(zhí)行

2.執(zhí)行component.html中的script1.js

3.執(zhí)行完script1.js后執(zhí)行component.html中的script2.js

4.執(zhí)行完 script2.js繼而執(zhí)行index.html中的script3.js

注意,如果給link[rel="import"]添加async屬性,HTML導入會把它當做含有async屬性的腳本來對待。它不會等待HTML導入文件的執(zhí)行和加載,這意味著HTML 導入不會妨礙HTML主文件的渲染。這也給提升網(wǎng)站性能帶來了可能,除非有其他的腳本依賴于HTML導入文件的執(zhí)行。
跨域?qū)?/p>

從根本上說,HTML導入是不能從其他的域名導入資源的。

比如,你不能從http://webcomponents.org/向 http://example.com/ 導入HTML 文件。為了繞過這個限制,可以使用CORS(跨域資源共享)。想了解CORS,請看這篇文章。
HTML導入文件中的window和document對象

前面我提過在導入HTML文件的時候里面的腳本是會被執(zhí)行的,但這并不意味著HTML導入文件中的標簽也會被瀏覽器渲染。你需要寫一些JavaScript代碼來幫忙。

當在HTML導入文件中使用JavaScript時,有一點要提防的是,HTML導入文件中的document對象實際上指的是HTML主文件中的document對象。以前面的代碼為例,index.html和  component.html 的document都是指index.html的document對象。怎么才能使用HTML導入文件中的document 呢?借助link中的import 屬性。

index.html
 

XML/HTML Code復制內(nèi)容到剪貼板
  1. var link = document.querySelector('link[rel="import"]');   
  2. link.addEventListener('load', function(e) {   
  3.   var importedDoc = link.import;   
  4.   // importedDoc points to the document under component.html   
  5. });  

為了獲取component.html中的document 對象,要使用document.currentScript.ownerDocument.

component.html
 

XML/HTML Code復制內(nèi)容到剪貼板
  1. var mainDoc = document.currentScript.ownerDocument;   
  2. // mainDoc points to the document under component.html  

如果你在用webcomponents.js,那么就用document._currentScript來代替document.currentScript。下劃線用于填充currentScript屬性,因為并不是所有的瀏覽器都支持這個屬性。

component.html

 

XML/HTML Code復制內(nèi)容到剪貼板
  1. var mainDoc = document._currentScript.ownerDocument;   
  2. // mainDoc points to the document under component.html   

通過在腳本開頭添加下面的代碼,你就可以輕松地訪問component.html中的document對象,而不用管瀏覽器是不是支持HTML導入。

document._currentScript = document._currentScript || document.currentScript;
性能方面的考慮

使用HTML 導入的一個好處是能夠?qū)①Y源組織起來,但是也意味著在加載這些資源的時候,由于使用了一些額外的HTML文件而讓頭部變得過大。有幾點是需要考慮的:
解析依賴

假如HTML主文件要依賴多個導入文件,而且導入文件中含有相同的庫,這時會怎樣呢?例如,你要從導入文件中加載jQuery,如果每個導入文件都含有加載jQuery的script標簽,那么jQuery就會被加載兩次,并且也會被執(zhí)行兩次。

index.html
 

XML/HTML Code復制內(nèi)容到剪貼板
  1. <link rel="import" href="component1.html">  
  2. <link rel="import" href="component2.html">  

component1.html
 

XML/HTML Code復制內(nèi)容到剪貼板
  1. <script src="js/jquery.js"></script>  

component2.html
 
HTML導入自動幫你解決了這個問題。

與加載兩次script標簽的做法不同,HTML 導入對已經(jīng)加載過的HTML文件不再進行加載和執(zhí)行。以前面的代碼為例,通過將加載jQuery的script標簽打包成一個HTML導入文件,這樣jQuery就只被加載和執(zhí)行一次了。

但這還有一個問題:我們增加了一個要加載的文件。怎么處理數(shù)目膨脹的文件呢?幸運的是,我們有一個叫vulcanize的工具來解決這個問題。
合并網(wǎng)絡請求

Vulcanize 能將多個HTML文件合并成一個文件,從而減少了網(wǎng)絡連接數(shù)。你可以借助npm安裝它,并且用命令行來使用它。你可能也在用 grunt和gulp 托管一些任務,這樣的話你可以把vulcanize作為構建過程的一部分。

為了解析依賴以及合并index.html中的導入文件,使用如下命令:


復制代碼
代碼如下:
$ vulcanize -o vulcanized.html index.html

通過執(zhí)行這個命令,index.html中的依賴會被解析,并且會產(chǎn)生一個合并的HTML文件,稱作 vulcanized.html。學習更多有關vulcanize的知識,請看這兒。

注意:http2的服務器推送功能被考慮用于以后消除文件的連結(jié)與合并。
把Template、Shadow DOM、自定義元素跟HTML導入結(jié)合起來

讓我們對這個文章系列的代碼使用HTML導入。你之前可能沒有看過這些文章,我先解釋一下:Template可以讓你用聲明的方式定義你的自定義元素的內(nèi)容。Shadow DOM可以讓一個元素的style、ID、class只作用到其本身。自定義元素可以讓你自定義HTML標簽。通過把這些跟HTML導入結(jié)合起來,你自定義的web 組件會變得模塊化,具有復用性。任何人添加一個Link標簽就可以使用它。

x-component.html

 

XML/HTML Code復制內(nèi)容到剪貼板
  1. <template id="template">  
  2.   <style>  
  3.     ...   
  4.   </style>  
  5.   <div id="container">  
  6.     <img src="http://webcomponents.org/img/logo.svg">  
  7.     <content select="h1"></content>  
  8.   </div>  
  9. </template>  
  10. <script>  
  11.   // This element will be registered to index.html   
  12.   // Because `document` here means the one in index.html   
  13.   var XComponent = document.registerElement('x-component', {   
  14.     prototype: Object.create(HTMLElement.prototype, {   
  15.       createdCallback: {   
  16.         value: function() {   
  17.           var root = this.createShadowRoot();   
  18.           var template = document.querySelector('#template');   
  19.           var clone = document.importNode(template.content, true);   
  20.           root.appendChild(clone);   
  21.         }   
  22.       }   
  23.     })   
  24.   });   
  25. </script>  

index.html
 

XML/HTML Code復制內(nèi)容到剪貼板
  1. ...   
  2.   <link rel="import" href="x-component.html">  
  3. </head>  
  4. <body>  
  5.   <x-component>  
  6.     <h1>This is Custom Element</h1>  
  7.   </x-component>  
  8.   ...  

注意,因為x-component.html 中的document 對象跟index.html的一樣,你沒必要再寫一些棘手的代碼,它會自動為你注冊。
支持的瀏覽器

Chrome 和 Opera提供對HTML導入的支持,F(xiàn)irefox要在2014年12月后才支持(Mozilla表示Firefox不計劃在近期提供對HTML導入的支持,聲稱需要首先了解ES6的模塊是怎樣實現(xiàn)的)。

你可以去chromestatus.com或caniuse.com查詢?yōu)g覽器是否支持HTML導入。想要在其他瀏覽器上使用HTML導入,可以用webcomponents.js(原名platform.js)。
相關資源

HTML導入就介紹這么多了。如果你想學更多關于HTML導入的知識,請前往:

    HTML Imports: #include for the web – HTML5Rocks
    HTML Imports spec

 

標簽:辛集 楊凌 蚌埠 撫順 黃山 德州 鶴崗 內(nèi)蒙古

巨人網(wǎng)絡通訊聲明:本文標題《簡單介紹HTML5中的文件導入》,本文關鍵詞  簡單,介紹,HTML5,中的,文件,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《簡單介紹HTML5中的文件導入》相關的同類信息!
  • 本頁收集關于簡單介紹HTML5中的文件導入的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    精品一二三四在线| 亚洲高清免费视频| 亚洲欧美偷拍卡通变态| h视频免费在线| 亚洲最大免费| 天堂网视频在线| 国产一区不卡在线观看| 性做久久久久久久久| 91精品国产综合久久久久| 亚洲影院色在线观看免费| 污污网站免费观看| 日本精品视频在线| 亚洲综合精品国产一区二区三区| 成人丁香基地| 少妇高潮一区二区三区99| 青青青爽久久午夜综合久久午夜| 欧美日韩一区二区在线免费观看| 成人毛片老司机大片| 欧美成人在线免费| 成人a区在线观看| 九九精品久久久| 国产免费视频一区二区三区| 中国精品18videos性欧美| 九九精品在线| 丁香色欲久久久久久综合网| 久久久久88色偷偷免费| 欧美中文字幕不卡| 亚洲激情五月| 日韩熟女精品一区二区三区| 成人黄色av| 亚洲一区二区三区四区| 亚洲伦理一区| 四虎一区二区| 91尤物视频在线观看| 久久超碰99| 大胆人体一区| 欧美日韩亚洲自拍| 国产精品一区二区三区免费| 亚洲青涩在线| 51蜜桃传媒精品一区二区| 免费毛片在线播放| 九色porny蝌蚪视频在线观看| 亚洲久久中文字幕| 人与动物性xxxx| 国产盗摄xxxx视频xxx69| 一区二区三区毛片免费| 亚洲爆乳无码一区二区三区| 亚洲精品一区二区三区蜜桃| 欧洲乱码伦视频免费| 日韩欧美三级一区二区| 一区二区在线视频观看| 成人三级av| 亚洲欧美综合区自拍另类| 一级欧美一级日韩| 国产精品亚洲一区二区三区在线观看| 国色天香久久精品国产一区| 久久久人成影片一区二区三区| 都市激情在线视频| 亚洲中文字幕无码爆乳av| 国产精品wwwwww| 国产成人精品无码免费看夜聊软件| 九九九伊在线综合永久| 国产污污在线观看| 神马午夜伦理影院| 自拍av一区二区三区| 污网站在线免费看| 欧美日韩一卡二卡| hitomi一区二区三区精品| 潘金莲激情呻吟欲求不满视频| 97久久超碰国产精品| 欧美日韩免费网站| 激情久久久久久| xfplay每日更新av资源在线| 国产黄色免费看| 日韩网站在线播放| 国产日韩精品一区二区三区在线| 国产精品91久久久| 日韩精品免费一区二区三区竹菊| 乱人伦视频在线| 亚洲欧美日韩国产综合精品二区| 亚洲视频一起| 自拍偷拍欧美日韩| 蜜臀久久久久久999| www在线播放| 色一情一区二区三区| 国产hs免费高清在线观看| 日韩不卡高清| 日本成人中文| 91精品国产综合久久久久久丝袜| 精品国产福利视频| 色撸撸在线视频| 国产精品欧美久久久久一区二区| 国产精品2023| 激情乱色小说视频| 亚洲在线观看免费| 日韩三级影视基地| 日韩视频一区二区| 欧美一区二区观看视频| 中文字幕第315页| www.99re.av| 欧美一级特黄aaaaaa大片在线观看| 老司机精品福利视频| 久久精品欧美一区二区三区麻豆| 国产精品狼人久久影院观看方式| 久久国产99| 国产精品乱码妇女bbbb| 国产精品视频专区| 亚洲欧美日韩成人| 麻豆av福利av久久av| 一本色道久久亚洲综合精品蜜桃| 国产精品18久久久久久首页狼| 成人高清在线观看免费| 色噜噜在线播放| 国产日韩欧美精品在线| 国产又粗又硬又长又爽| 亚洲人成影院77777| 成人av在线网站| 亚洲二区在线播放| 先锋影音男人站你懂得| 亚洲欧美偷拍一区| 中国jizz妇女jizz妇女| 午夜在线视频一区二区区别| 欧美喷水视频| 国产精品15p| 一色桃子久久精品亚洲| 哺乳挤奶一区二区三区免费看| 日韩精品在线不卡| 久草视频在线资源| 欧美激情一区二区三区免费观看| 日韩av电影免费观看高清| 欧美一级大片在线观看| 公共露出暴露狂另类av| 91麻豆精品国产91久久久更新资源速度超快| 久久久久久影视| 长河落日免费高清观看| 日韩va在线观看| 亚洲欧美日韩国产成人综合一二三区| 日本欧美国产在线| 久久精品成人av| 国产成人福利片| 国产精品影视天天线| 一二三四在线观看免费高清中文在线观看| 久草视频在线资源| 136国产福利精品导航网址应用| 免费激情网址| 中文字幕av一区二区三区人妻少妇| 91在线视频播放| 激情懂色av一区av二区av| 99国产一区二区三精品乱码| 国产日韩欧美不卡在线| 黄动漫在线免费观看| xxxwww在线观看| 亚洲欧洲视频| 嘿咻视频在线看| 在线亚洲国产精品网站| wwww在线观看免费视频| 国产成人精品免费看视频| 一区二区成人免费视频| 国产亚洲成精品久久| 精品少妇一区二区三区| 国产日韩综合av| 国产女主播一区二区三区| 91免费国产网站| а√在线中文在线新版| 在线影视一区二区三区| 国产精品夜间视频香蕉| 亚洲精品成a人ⅴ香蕉片| 中文字幕日韩精品无码内射| 久久在线免费| 亚洲国产天堂久久综合网| 欧美一区二区三区免费观看视频| 在线免费观看不卡av| 久久久久久久久久久一区| 91免费视频网| 制服诱惑一区二区| 国产精品美女久久久久av福利| 日本精品视频在线观看| 国产精品magnet| 成人免费在线一区二区三区| 视频一区二区视频| 污视频网站免费在线观看| 日韩欧美一区二区在线视频| 久久久久久久综合狠狠综合| 久久久精品毛片| 三级黄色片在线观看| 国产精品网友自拍| 人人在草线视频在线观看| 亚洲欧美日韩视频二区| 日韩av资源网| 啊灬啊灬啊灬啊灬高潮在线看| 精品国语对白精品自拍视| 亚洲一区二区在线视频观看| 91国产福利在线| 1769国产精品| 强开小嫩苞一区二区三区视频| 久久午夜a级毛片| 免费的av网站| 国产人妻精品一区二区三区| 成人做爰视频www| 男人艹女人网站| 日韩电影中文 亚洲精品乱码| 亚洲mv在线| 嗯啊主人调教在线播放视频| 亚洲 美腿 欧美 偷拍| 在线一区二区日韩| 亚洲毛片一区二区三区| 亚洲h动漫在线| 国产精品jizz视频| 91av成人在线| 国语一区二区三区| 国产成人综合久久| 国产亚洲福利社区| 久久密一区二区三区| 中文字幕成人av| 色哟哟入口国产精品| 成人在线免费观看91| qvod激情图片| p色视频免费在线观看| 俺去啦在线观看| 亚洲综合自拍一区| 在线免费观看黄色片| 国产精品日韩精品中文字幕| 中文字幕高清在线播放| 午夜精品免费在线| 精品久久久久一区二区三区| 男女视频在线观看| 91国语精品自产拍| 欧美狂猛xxxxx乱大交3| 女人色偷偷aa久久天堂| 精品美女一区| 亚洲成人日韩在线| 久久国产精品视频在线观看| 可以在线观看av的网站| 日本三级亚洲精品| 黄色三级视频在线观看| 在线免费黄色| 午夜av区久久| 一区二区三区国产豹纹内裤在线| 伦av综合一区| 欧美国产一级| 精品国产无码一区二区| 黄色一级片免费的| 亚洲一区二区色| 久久黄色一级视频| 制服丝袜亚洲精品中文字幕| 亚洲精品一区在线观看香蕉| 日日躁夜夜躁人人揉av五月天| 国产精品视频一| 波多野结衣电影在线播放| 国产欧美一区二区三区在线看蜜臂| 毛片在线网址| 亚洲色图在线观看| 日本精品影院| 欧美一级片免费在线观看| 视频成人永久免费视频| 亚洲国产综合在线观看| 国产天堂在线播放视频| 亚洲社区在线| 欧美jizzhd精品欧美满| 老司机精品视频在线播放| 天天操天天操天天干| 伊人狠狠av| 免费黄视频网站| 亚洲一级片免费观看| 天堂网站www天堂资源在线| 国产一区二区欧美| 久久青青草视频| 97av在线播放| 九九九九热精品免费视频| 日韩午夜一区| 日韩成人免费电影| 欧美一区2区三区4区公司二百| 首页综合国产亚洲丝袜| 免费黄视频在线观看| 老司机免费视频一区二区三区| 中文字幕一区二区三区在线播放| 在线播放91| 一区二区免费av| 少妇极品熟妇人妻无码| 日韩成人在线看| 九九热精品视频在线| aaa一区二区三区| 日韩一级免费在线观看| 99中文字幕| 99精品国产99久久久久久白柏| 在线观看免费观看在线91| 国产性做久久久久久| 国产精品高潮呻吟视频| 18久久久久久| 高清在线观看免费| 欧美一区二区三区四区久久| 在线免费看黄av| 日本美女视频一区二区| 91入口在线观看| 三级国产在线观看| 污片视频在线免费观看| 久久久久亚洲AV成人无在| 成年女人免费视频| 日本一本不卡| 2018国产精品视频| 久色视频在线| 欧美天堂一区二区三区| 精品国产乱码一区二区三| 香蕉av福利精品导航| 高清久久精品| 亚洲毛片一区二区三区| 精品视频免费| 国产精品久久久久久久久久久久久久久久| 日本高清视频免费观看| 日韩精品一区二区视频| 亚洲天堂av资源在线观看| 精品亚洲一区二区三区四区五区高| 久久久国产91| 亚洲第一区色| 亚洲高清影院| 欧美va天堂| 亚洲妇女成熟| 国产麻豆一精品一av一免费| 亚洲精品韩国| 91香蕉视频在线观看视频| 欧美国产精品劲爆| 五月激情丁香网| 国产传媒av在线| 国产精品51麻豆cm传媒| 亚洲精品成人无限看| 欧美艹逼视频| 免费观看黄网站| 四虎影视精品|