茄子在线看片免费人成视频,午夜福利精品a在线观看,国产高清自产拍在线观看,久久综合久久狠狠综合

    <s id="ddbnn"></s>
  • <sub id="ddbnn"><ol id="ddbnn"></ol></sub>

  • <legend id="ddbnn"></legend><s id="ddbnn"></s>

    詳解HTML5中rel屬性的prefetch預(yù)加載功能使用
    來源:易賢網(wǎng) 閱讀:1415 次 日期:2016-07-07 11:44:09
    溫馨提示:易賢網(wǎng)小編為您整理了“詳解HTML5中rel屬性的prefetch預(yù)加載功能使用”,方便廣大網(wǎng)友查閱!

    這篇文章主要介紹了HTML5中rel屬性的prefetch預(yù)加載功能使用,特別是在用戶第一次訪問Web頁(yè)面瀏覽器尚無(wú)緩存的時(shí)候,prefetch可以用作加速,需要的朋友可以參考下

    在HTML5中,有個(gè)很有用但常被忽略的特性,就是預(yù)先加載(prefetch),它的原理是:

    利用瀏覽器的空閑時(shí)間去先下載用戶指定需要的內(nèi)容,然后緩存起來,這樣用戶下次加載時(shí),就直接從緩存中取出來,效率就快了.

    舉個(gè)例子說明:比如要預(yù)先加載某個(gè)頁(yè)面,可以這樣:

    XML/HTML Code

    <link rel="prefetch" > <!-- Firefox -->

    但如果是google的話,要用另外的一個(gè)名稱,即:

    XML/HTML Code

    <link rel="prerender" > <!-- Chrome -->

    即使在不支持的瀏覽器,用了這個(gè)特性其實(shí)是不會(huì)出錯(cuò)的,只不過瀏覽器解析不到而已,

    所以,如果你感覺能有辦法預(yù)先預(yù)測(cè)到用戶期望點(diǎn)的頁(yè)面(比如用戶看最新的受歡迎的熱圖,他 可能看了第一頁(yè)后,會(huì)繼續(xù)看下一頁(yè),這個(gè)時(shí)候就可以用預(yù)先加載這個(gè)特性了).比如

    XML/HTML Code

    <link rel="prefetch" href="<?php echo get_next_posts_page_link(); ?>">

    而單獨(dú)取一張圖片也是可以的,比如:

    XML/HTML Code

    <link rel="prefetch" href="/images/test.jpg"/>

    有了瀏覽器緩存,為何還需要預(yù)加載?

    1.用戶可能是第一次訪問網(wǎng)站,此時(shí)還無(wú)緩存

    2.用戶可能清空了緩存

    3.緩存可能已經(jīng)過期,資源將重新加載

    4.用戶訪問的緩存文件可能不是最新的,需要重新加載

    5.Chrome 的預(yù)加載技術(shù)

    現(xiàn)在的 chrome 聰明到根據(jù)你的瀏覽記錄,預(yù)測(cè)到你可能訪問或搜索哪些網(wǎng)站,在你打開網(wǎng)站之前就加載好了一些資源了。

    舉個(gè)栗子,當(dāng)你在搜索框輸入 "amaz" 時(shí),它猜測(cè)到你可能要訪問 amazon.com,可能就幫你加載了這個(gè)網(wǎng)站的一些資源。

    如果這個(gè)預(yù)測(cè)算法精準(zhǔn)的話,就能大大地提高用戶的瀏覽體驗(yàn)了。

    DNS prefetch

    我們知道,當(dāng)我們?cè)L問一個(gè)網(wǎng)站如 www.amazon.com 時(shí),需要將這個(gè)域名先轉(zhuǎn)化為對(duì)應(yīng)的 IP 地址,這是一個(gè)非常耗時(shí)的過程。

    DNS prefetch 分析這個(gè)頁(yè)面需要的資源所在的域名,瀏覽器空閑時(shí)提前將這些域名轉(zhuǎn)化為 IP 地址,真正請(qǐng)求資源時(shí)就避免了上述這個(gè)過程的時(shí)間。

    XML/HTML Code

    <meta http-equiv='x-dns-prefetch-control' content='on'>

    <link rel='dns-prefetch' >

    <link rel='dns-prefetch' >

    <link rel='dns-prefetch' >

    <link rel='dns-prefetch' >

    <link rel='dns-prefetch' >

    應(yīng)用場(chǎng)景1:我們的資源存在在不同的 CDN 中,那提前聲明好這些資源的域名,就可以節(jié)省請(qǐng)求發(fā)生時(shí)產(chǎn)生的域名解析的時(shí)間。

    應(yīng)用場(chǎng)景2:如果我們知道用戶接下來的操作一定會(huì)發(fā)起一起資源的請(qǐng)求,那就可以將這個(gè)資源進(jìn)行 DNS-Prefetch,加強(qiáng)用戶體驗(yàn)。

    Resource prefetch

    在 Chrome 下,我們可以用 link標(biāo)簽聲明特定文件的預(yù)加載:

    XML/HTML Code

    <link rel='subresource' href='critical.js'>

    <link rel='subresource' href='main.css'>

    <link rel='prefetch' href='secondary.js'>

    在 Firefox 中或用 meta 標(biāo)簽聲明:

    XML/HTML Code

    <meta http-equiv="Link" content="<critical.js>; rel=prefetch">

    rel='subresource' 表示當(dāng)前頁(yè)面必須加載的資源,應(yīng)該放到頁(yè)面最頂端先加載,有最高的優(yōu)先級(jí)。

    rel='prefetch' 表示當(dāng) subresource 所有資源都加載完后,開始預(yù)加載這里指定的資源,有最低的優(yōu)先級(jí)。

    注意:只有可緩存的資源才進(jìn)行預(yù)加載,否則浪費(fèi)資源!

    Pre render

    前面說到的預(yù)解析DNS、預(yù)加載資源已經(jīng)夠強(qiáng)悍了有木有,可還有更厲害的預(yù)渲染(Pre-rendering)!

    預(yù)渲染意味著我們提前加載好用戶即將訪問的下一個(gè)頁(yè)面,否則進(jìn)行預(yù)渲染這個(gè)頁(yè)面將浪費(fèi)資源,慎用!

    XML/HTML Code

    <link rel='prerender' >

    rel='prerender' 表示瀏覽器會(huì)幫我們渲染但隱藏指定的頁(yè)面,一旦我們?cè)L問這個(gè)頁(yè)面,則秒開了!

    在 Firefox 中或用 rel='next' 來聲明

    XML/HTML Code

    <link rel="next" >

    不是所有的資源都可以預(yù)加載

    當(dāng)資源為以下列表中的資源時(shí),將阻止預(yù)渲染操作:

    1.URL 中包含下載資源

    2.頁(yè)面中包含音頻、視頻

    3.POST、PUT 和 DELETE 操作的 ajax 請(qǐng)求

    4.HTTP 認(rèn)證(Authentication)

    5.HTTPS 頁(yè)面

    6.含惡意軟件的頁(yè)面

    7.彈窗頁(yè)面

    8.占用資源很多的頁(yè)面

    9.打開了 chrome developer tools 開發(fā)工具

    手動(dòng)觸發(fā)預(yù)渲染操作

    在 head 中強(qiáng)勢(shì)插入 link[rel='prerender'] 即可:

    JavaScript Code

    var hint =document.createElement("link")

    hint.setAttribute(“rel”,”prerender”)

    hint.setAttribute(“href”,”next-page.html”)

    document.getElementsByTagName(“head”)[0].appendChild(hint)

    更多信息請(qǐng)查看網(wǎng)頁(yè)制作
    易賢網(wǎng)手機(jī)網(wǎng)站地址:詳解HTML5中rel屬性的prefetch預(yù)加載功能使用
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
    相關(guān)閱讀網(wǎng)頁(yè)制作

    2026國(guó)考·省考課程試聽報(bào)名

    • 報(bào)班類型
    • 姓名
    • 手機(jī)號(hào)
    • 驗(yàn)證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn) | 投訴建議
    工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
    云南網(wǎng)警備案專用圖標(biāo)
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報(bào)警專用圖標(biāo)