亚洲免费不卡_在线视频精品_国产尤物精品_久久久久网址_久久精品91_欧美va天堂在线_狠狠入ady亚洲精品_亚洲午夜精品福利_国产精品草草_午夜精品久久99蜜桃的功能介绍

簡單介紹HTML5中的文件導入
來源:易賢網 閱讀:2575 次 日期:2016-07-09 11:21:54
溫馨提示:易賢網小編為您整理了“簡單介紹HTML5中的文件導入”,方便廣大網友查閱!

這篇文章主要介紹了簡單介紹HTML中的文件導入,包括加載jQuery、導入后的執行順序等知識點,需要的朋友可以參考下

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

刪除重復依賴也并不簡單。例如,現在加載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

<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

<link rel="stylesheet" href="css/style.css">  

<script src="js/script.js"></script>  

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

執行順序

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

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

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

index.html

XML/HTML Code

<link rel="import" href="component.html"> // 1.   

<title>Import Example</title>  

<script src="script3.js"></script>        // 4.  

component.html

XML/HTML Code

<script src="js/script1.js"></script>     // 2.   

<script src="js/script2.js"></script>     // 3.  

1.在index.html 中加載component.html并等待執行

2.執行component.html中的script1.js

3.執行完script1.js后執行component.html中的script2.js

4.執行完 script2.js繼而執行index.html中的script3.js

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

跨域導入

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

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

HTML導入文件中的window和document對象

前面我提過在導入HTML文件的時候里面的腳本是會被執行的,但這并不意味著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

var link = document.querySelector('link[rel="import"]');   

link.addEventListener('load', function(e) {   

  var importedDoc = link.import;   

  // importedDoc points to the document under component.html   

});  

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

component.html

XML/HTML Code

var mainDoc = document.currentScript.ownerDocument;   

// mainDoc points to the document under component.html  

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

component.html

XML/HTML Code

var mainDoc = document._currentScript.ownerDocument;   

// mainDoc points to the document under component.html   

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

document._currentScript = document._currentScript || document.currentScript;

性能方面的考慮

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

解析依賴

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

index.html

XML/HTML Code

<link rel="import" href="component1.html">  

<link rel="import" href="component2.html">  

component1.html

XML/HTML Code

<script src="js/jquery.js"></script>  

component2.html

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

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

但這還有一個問題:我們增加了一個要加載的文件。怎么處理數目膨脹的文件呢?幸運的是,我們有一個叫vulcanize的工具來解決這個問題。

合并網絡請求

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

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

復制代碼代碼如下:

$ vulcanize -o vulcanized.html index.html

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

注意:http2的服務器推送功能被考慮用于以后消除文件的連結與合并。

把Template、Shadow DOM、自定義元素跟HTML導入結合起來

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

x-component.html

XML/HTML Code

<template id="template">  

  <style>  

    ...   

  </style>  

  <div id="container">  

    <img src="http://webcomponents.org/img/logo.svg">  

    <content select="h1"></content>  

  </div>  

</template>  

<script>  

  // This element will be registered to index.html   

  // Because `document` here means the one in index.html   

  var XComponent = document.registerElement('x-component', {   

    prototype: Object.create(HTMLElement.prototype, {   

      createdCallback: {   

        value: function() {   

          var root = this.createShadowRoot();   

          var template = document.querySelector('#template');   

          var clone = document.importNode(template.content, true);   

          root.appendChild(clone);   

        }   

      }   

    })   

  });   

</script>  

index.html

XML/HTML Code

...   

  <link rel="import" href="x-component.html">  

</head>  

<body>  

  <x-component>  

    <h1>This is Custom Element</h1>  

  </x-component>  

  ...  

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

支持的瀏覽器

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

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

更多信息請查看網頁制作
易賢網手機網站地址:簡單介紹HTML5中的文件導入
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點

版權所有:易賢網

亚洲免费不卡_在线视频精品_国产尤物精品_久久久久网址_久久精品91_欧美va天堂在线_狠狠入ady亚洲精品_亚洲午夜精品福利_国产精品草草_午夜精品久久99蜜桃的功能介绍
国产一区成人| 亚洲午夜极品| 国色天香一区二区| 亚洲私拍自拍| 国产亚洲欧美一区二区| 久久国产精品久久精品国产| 午夜日韩电影| 亚洲精品裸体| 久久国产精品亚洲va麻豆| 欧美一区二区三区在线免费观看 | 一区二区亚洲| 国产精品美女黄网| 欧美日韩在线一区二区三区| 国产亚洲第一区| 欧美日韩国产色综合一二三四| 91久久在线| 欧美日本不卡| 美女黄色成人网| 亚洲清纯自拍| 国内精品福利| 欧美一区三区二区在线观看| 国产日韩欧美精品| 国产精品二区影院| 久久久综合香蕉尹人综合网| 国产视频在线观看一区| 韩日午夜在线资源一区二区| 国产精品视区| 亚洲伦理一区| 亚洲乱码视频| 久久精品首页| 亚洲欧美精品在线观看| 99视频一区| 亚洲国产午夜| 精品1区2区3区4区| 欧美天堂亚洲电影院在线观看| 久久国产福利| 久久精品官网| 麻豆久久精品| 国产精品腿扒开做爽爽爽挤奶网站| 精品91视频| 亚洲视屏一区| 亚洲国产精品一区| 在线观看成人av| 在线观看一区| 99精品视频免费观看视频| 亚洲黄色一区| 亚洲人成高清| 亚洲神马久久| 亚洲免费网站| 久久久久久自在自线| 久久精品盗摄| 久久久蜜桃一区二区人| 蜜乳av另类精品一区二区| 男人的天堂亚洲在线| 久久国产精品久久久久久电车 | 一区二区三区高清视频在线观看| 伊甸园精品99久久久久久| 欧美视频在线观看| 欧美日韩综合久久| 国产精品成人一区二区网站软件 | 日韩亚洲精品在线| av成人毛片| 99亚洲视频| 国产一区二区黄色| 久久久久久穴| 含羞草久久爱69一区| 影音先锋中文字幕一区二区| 亚洲精品资源| 久久激情网站| 激情亚洲网站| 国产精品日韩一区二区| 久久久人人人| 欧美全黄视频| 国产偷自视频区视频一区二区| 一区视频在线看| 国产日韩欧美二区| 午夜日本精品| 国产日韩免费| 欧美日韩在线高清| 一区二区三区av| 欧美一区激情| 99国产精品视频免费观看一公开| 免费日韩精品中文字幕视频在线| 欧美阿v一级看视频| 亚洲激情亚洲| 女主播福利一区| 国产情侣一区| 国产一区日韩一区| 国产精品美女久久久| 国产在线视频欧美一区二区三区| 国产精品亚洲不卡a| 激情综合在线| 欧美高清一区| 国产亚洲在线观看| 亚洲网址在线| 午夜日韩av| 亚洲一区精品视频| 欧美日韩国产亚洲一区| 夜夜爽av福利精品导航| 国产一区二区无遮挡| 亚洲欧美视频| 一本久久综合| 亚洲第一精品影视| 欧美深夜福利| 欧美日韩一区在线播放| 国产精品毛片| 一区二区三区四区国产| 影音先锋国产精品| 欧美在线看片| 久久久久久黄| 久久国产精品亚洲77777| av成人激情| 99视频国产精品免费观看| 欧美极品一区二区三区| 免播放器亚洲| 久久xxxx精品视频| 亚洲一区二区在线看| 99精品国产在热久久下载| 狠狠色狠狠色综合日日tαg| 欧美国产精品| 欧美日韩免费精品| 欧美日韩亚洲一区在线观看| 久久久久成人精品免费播放动漫| 国产毛片一区| 久久精品日韩欧美| 欧美一区激情| 欧美视频日韩| 一区二区在线不卡| 宅男噜噜噜66一区二区| 亚洲一区自拍| 欧美99在线视频观看| 午夜精品视频| 亚洲一级黄色| 99精品视频网| 欧美一级网站| 欧美日韩喷水| 亚洲经典视频在线观看| 国产视频久久| 欧美日韩大片一区二区三区| 欧美午夜欧美| 99一区二区| 亚洲免费在线| 午夜精品一区二区三区四区| 黄色综合网站| 国产精品毛片一区二区三区| 久久国产成人| 韩国一区二区三区在线观看 | 国内精品久久久久久久果冻传媒 | 麻豆av福利av久久av| 久久精品成人一区二区三区蜜臀| 老司机久久99久久精品播放免费| 欧美日韩一区二| 亚洲国产欧美不卡在线观看| 亚洲一区欧美二区| 国产精品啊啊啊| 国产精品色网| 黑丝一区二区三区| 午夜亚洲伦理| 亚洲激情午夜| 玖玖国产精品视频| 99精品热视频只有精品10| 久久久综合香蕉尹人综合网| 在线视频观看日韩| 欧美一区二区| 国产精品视频久久一区| 黄色亚洲精品| 老色鬼久久亚洲一区二区| 99riav国产精品| 欧美日韩一区二区三区在线观看免 | 国产精品mv在线观看| 亚洲乱亚洲高清| 欧美日本韩国在线| 激情文学一区| 日韩视频不卡| 精品999在线观看| 欧美激情日韩| 久久午夜av| 国产午夜久久| 亚洲国产高清视频| 欧美女人交a| 麻豆成人精品| 国产精品视频免费一区| 影音先锋亚洲精品| 欧美成人一区二免费视频软件| 中文亚洲免费| 99国产精品私拍| 在线观看成人av电影| 欧美激情自拍| 欧美a级片网站| 亚洲综合不卡| 噜噜噜久久亚洲精品国产品小说| 在线视频精品一区| 中文亚洲欧美| 一本久道久久综合狠狠爱| 伊人久久综合| 在线国产精品一区| 亚洲国产专区| 亚洲作爱视频| 国产精品毛片| 久久精品导航| 午夜国产精品视频| 欧美视频二区| 激情自拍一区| 一本一本久久| 亚洲综合精品| 女人天堂亚洲aⅴ在线观看| 狂野欧美一区| 国内精品嫩模av私拍在线观看| 国产精品va| 亚洲国产一区二区在线| 国产日韩一区| 欧美一区免费| 伊人久久久大香线蕉综合直播| 伊人成人在线| 国产精品区一区| 久久久亚洲一区| 国内激情久久| 在线亚洲精品| 久久亚洲精品欧美| 黑丝一区二区| 在线亚洲欧美| 亚洲激情自拍| 欧美日韩一区二区三| 一区免费在线| 亚洲综合激情| 亚洲午夜精品国产| 欧美资源在线| 影音先锋久久资源网| 国产精品亚洲欧美| 欧美午夜一区| 性一交一乱一区二区洋洋av| 欧美日韩91| 伊人久久成人| 女女同性女同一区二区三区91 | 欧美一区1区三区3区公司| 久久久999| 激情一区二区三区| 久久精品人人做人人爽电影蜜月| 欧美日韩理论| 国产精品毛片在线看| 国产中文一区| 久久免费黄色| 国产亚洲毛片在线| 黄色欧美日韩| 欧美激情一级片一区二区| 一区二区三区国产盗摄| 亚洲小说欧美另类婷婷| 久久国产一区二区| 国产精品区免费视频| 在线看无码的免费网站| 午夜精品区一区二区三| 麻豆成人精品| 国产毛片一区| 国产欧美不卡| av成人黄色| 日韩亚洲一区在线播放| 一区二区在线不卡| 欧美日韩视频在线一区二区观看视频| 亚洲免费在线精品一区| 一区二区三区精品国产| 欧美婷婷久久| 欧美区日韩区| 欧美精品97| 午夜精品偷拍| 欧美日一区二区三区在线观看国产免| 久久久久国产精品一区二区| 欧美一级播放| 久久精选视频| 久久中文欧美| 欧美在线一二三区| 欧美福利视频| 麻豆精品网站| 欧美片第1页综合| 美女精品在线| 久热国产精品| 欧美另类女人| 亚洲午夜在线观看| 亚洲美女啪啪| aa成人免费视频| 国产精品美女| 免费看亚洲片| 欧美一区亚洲二区| 国产一区二区三区四区老人| 欧美日韩亚洲一区二区三区在线 | 久久性天堂网| 噜噜噜91成人网| 久久婷婷一区| 亚洲欧美综合| 欧美三日本三级少妇三99| 亚洲人成毛片在线播放女女| 99精品久久久| 欧美一区=区| 狠狠久久婷婷| 一区二区高清视频| 久久久水蜜桃av免费网站| 国语精品中文字幕| 亚洲深爱激情| 欧美理论在线| 国产日韩一区| 激情国产一区| 亚洲欧美视频一区二区三区| 欧美日韩一区二区三| 一区二区三区成人精品| 欧美高清一区| 国产亚洲欧美一区二区| 女生裸体视频一区二区三区| 亚洲精品一二| 久久午夜精品一区二区| 亚洲清纯自拍| 午夜视频久久久| 国产亚洲永久域名| 欧美日韩视频| 午夜综合激情| 亚洲国产精品一区| 欧美二区视频| 免费欧美在线| 国产欧美成人| 亚洲国产精品一区在线观看不卡| 麻豆9191精品国产| 一区二区毛片| 亚洲综合国产激情另类一区| 在线观看一区| 欧美日韩国产综合在线| 国产伦精品一区二区三区视频黑人 | 99香蕉国产精品偷在线观看| 亚洲一区精彩视频| 亚洲国产午夜| 欧美日韩亚洲一区二区三区四区| 国产精品美女久久久浪潮软件| 激情91久久| 欧美日韩蜜桃| 午夜精品区一区二区三| 亚洲一区亚洲| 国产亚洲永久域名| 亚洲精品孕妇| 亚洲高清不卡| 极品中文字幕一区| 欧美久久视频| 欧美精品一区二区视频| 久久一区二区三区四区五区| 亚洲欧美电影在线观看| 国产精品毛片va一区二区三区| 99国产精品私拍| 夜夜嗨av一区二区三区网站四季av| 国内精品久久久久久久97牛牛| 欧美日本不卡| 国产精品swag| 黄色亚洲在线| 精品白丝av| 亚洲激情自拍| 一区二区国产精品| 国产午夜精品一区二区三区欧美| 99视频一区| 亚洲制服av| 久久青青草原一区二区| 亚洲国产专区校园欧美| 99视频精品免费观看| 99热免费精品| 国产女主播一区二区| 亚洲一区bb| 欧美一区二区三区免费看| 欧美91福利在线观看| 欧美日韩天天操| 精品9999| 国产女主播一区二区| 久久亚洲二区| 黑人中文字幕一区二区三区| 亚洲激情不卡| 欧美亚洲免费高清在线观看| 欧美高清视频一区| 在线成人亚洲| 亚洲永久免费精品| 欧美日韩精品免费观看| 在线观看的日韩av| 亚洲欧美日本国产专区一区| 久久亚洲美女| 亚洲经典自拍| 亚洲欧美日本日韩| 欧美日韩免费| 国产一区二区三区久久久久久久久| 亚洲中字在线| 亚洲午夜激情| 免费一区二区三区| 黄色欧美成人| 麻豆成人小视频| 99国产精品久久久久久久成人热 | 国产日韩欧美高清免费| 男人的天堂成人在线| 欧美日韩精品不卡| 国产精品视频久久一区| 午夜性色一区二区三区免费视频| 亚洲私拍自拍| 久久午夜视频| 亚洲少妇在线| 亚洲欧美日韩国产一区| 尹人成人综合网| 久久久久久久久久码影片| 亚洲裸体俱乐部裸体舞表演av| 久色成人在线| 国产精品综合色区在线观看|