成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

如何使用 HTML Imports

baukh789 / 2150人閱讀

摘要:組件從第一次被引入,經(jīng)歷了漫長(zhǎng)的過(guò)程。這種方法允許我們將文檔導(dǎo)入到其他的文檔中去。瀏覽器支持是一個(gè)非常新的技術(shù)以至于目前只有及以上才支持。即便如此,你還必須手動(dòng)激活這個(gè)功能。在瀏覽器地址欄輸入并訪問(wèn)然后啟用然后重啟即可使用。

Web 組件從第一次被引入,經(jīng)歷了漫長(zhǎng)的過(guò)程。其中某個(gè)組件可能真的會(huì)改變我們編寫網(wǎng)站的方式,它就是 HTML Imports 。

這種方法允許我們將 HTML 文檔導(dǎo)入到其他的 HTML 文檔中去 。 它可以通過(guò) Ajax 實(shí)現(xiàn),不過(guò) HTML Imports 是一個(gè)更干凈的方法 。

瀏覽器支持

HTML Imports 是一個(gè)非常新的技術(shù)以至于目前只有 Chrome 31 及以上才支持。即便如此,你還必須手動(dòng)激活這個(gè)功能。在瀏覽器地址欄輸入并訪問(wèn) chrome://flags 然后啟用 "Enable HTML Imports" 然后重啟即可使用 。

幸運(yùn)的是還有個(gè) Polyfill for HTML Imports ,你可以在 Github 找到它。

使用 HTML Imports

想想看,我們已經(jīng)使用 imports 來(lái)引入樣式表和 JS 文件;這只是另一種導(dǎo)入類型并且語(yǔ)法與導(dǎo)入樣式表類似,在你的文檔頭部這樣寫:


獲取內(nèi)容

當(dāng)你導(dǎo)入一個(gè) HTML 文件你其實(shí)希望瀏覽器去獲取你想要的內(nèi)容, 但它不會(huì)自動(dòng)得在文檔上展現(xiàn);為此你需要編寫一些簡(jiǎn)單的 JavaScript 代碼。為了獲取導(dǎo)入的 HTMl 的內(nèi)容你可以這么寫:

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

這段代碼會(huì)獲取到我們導(dǎo)入的 post.html 文件,假設(shè) post.html 文件內(nèi)容如下:

A Post Title

Written by: Admin

If you run a business and want a professional first point of contact or just need a hand with some of the day to day to business tasks because things are getting a bit busy, then we can help.

我們需要獲得導(dǎo)入頁(yè)面的內(nèi)容然后將文章部分放到我們的頁(yè)面上:

var post = document.querySelector("link[rel="import"]").import;
var article = post.querySelector(".post");
document.body.appendChild(article.cloneNode(true));

我們也可以利用專門為這種需求設(shè)計(jì)的模版元素,按需導(dǎo)入部分模版。 在這個(gè)案例中唯一不一樣的是我們會(huì)將元素導(dǎo)入到一個(gè)容器中,而不是 body ,這樣能更好的適配我們的app?;径际亲鲞x擇然后執(zhí)行一小段 JS ,要將 HTML 插入到某個(gè)元素里你可以這樣寫:

var post = document.querySelector("link[rel="import"]").import;
var article = post.querySelector(".post");
var clone = document.importNode(article.content, true);
document.querySelector("#container").appendChild(clone);

如你所見(jiàn),這個(gè)案例不同的地方在于它先克隆了元素,然后附加到了某個(gè)元素里。

總結(jié)

HTML Imports 給予我們一個(gè)很棒的方法來(lái)構(gòu)建更好的網(wǎng)站以及組織應(yīng)用,它的 API 也比較簡(jiǎn)單,一旦瀏覽器支持的話會(huì)發(fā)揚(yáng)光大,希望它能成為一個(gè)常見(jiàn)的技術(shù)。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/64083.html

相關(guān)文章

  • 如何使用 HTML Imports

    摘要:組件從第一次被引入,經(jīng)歷了漫長(zhǎng)的過(guò)程。這種方法允許我們將文檔導(dǎo)入到其他的文檔中去。瀏覽器支持是一個(gè)非常新的技術(shù)以至于目前只有及以上才支持。即便如此,你還必須手動(dòng)激活這個(gè)功能。在瀏覽器地址欄輸入并訪問(wèn)然后啟用然后重啟即可使用。 Web 組件從第一次被引入,經(jīng)歷了漫長(zhǎng)的過(guò)程。其中某個(gè)組件可能真的會(huì)改變我們編寫網(wǎng)站的方式,它就是 HTML Imports 。 這種方法允許我們將 HTML ...

    RobinTang 評(píng)論0 收藏0
  • Angular(01)-- 架構(gòu)概覽

    摘要:正文架構(gòu)概覽正文架構(gòu)概覽接觸大概一個(gè)月吧,期間寫了個(gè)項(xiàng)目,趁現(xiàn)在稍微有點(diǎn)時(shí)間,來(lái)回顧梳理一下。里的模塊,并不等同于項(xiàng)目中的模塊概念。當(dāng)然,這只是我目前階段的理解。聲明 本系列文章內(nèi)容梳理自以下來(lái)源: Angular 官方中文版教程 官方的教程,其實(shí)已經(jīng)很詳細(xì)且易懂,這里再次梳理的目的在于復(fù)習(xí)和鞏固相關(guān)知識(shí)點(diǎn),剛開(kāi)始接觸學(xué)習(xí) Angular 的還是建議以官網(wǎng)為主。 因?yàn)檫@系列文章,更多的會(huì)...

    bitkylin 評(píng)論0 收藏0
  • [譯] 別再對(duì) Angular Modules 感到迷惑

    摘要:大多數(shù)初學(xué)者會(huì)認(rèn)為也有封裝規(guī)則,但實(shí)際上沒(méi)有。第二個(gè)規(guī)則是最后導(dǎo)入模塊的,會(huì)覆蓋前面導(dǎo)入模塊的。 原文鏈接:Avoiding common confusions with modules in Angular showImg(https://segmentfault.com/img/remote/1460000015298243?w=270&h=360); Angular Modul...

    LMou 評(píng)論0 收藏0
  • 深度介紹:

    摘要:未來(lái)會(huì)使用來(lái)取代它,但是現(xiàn)在貌似還沒(méi)有取代的方案,在新版的中這個(gè)功能已經(jīng)被刪除了,并且在使用的時(shí)候會(huì)在中給出警告。 嘿!看看這幾年啊,Web 前端的發(fā)展可是真快啊!想想幾年前,HTML 是前端開(kāi)發(fā)者的基本技能,通過(guò)各式各樣的標(biāo)簽就可以搭建一個(gè)可用的網(wǎng)站,基本交互也不是問(wèn)題。如果再來(lái)點(diǎn) CSS,嗯,金黃酥脆,美味可口。這時(shí)候再撒上幾把 JavaScript,簡(jiǎn)直讓人欲罷不能。 隨著需求的...

    chadLi 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

baukh789

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<