最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用InstantClick.js讓頁面提前加載200ms

 更新時間:2017年09月12日 16:16:07   作者:Ray  
本篇文章主要介紹了使用InstantClick.js讓頁面提前加載200ms,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

前言

加速網(wǎng)站加載的方式有很多,在@Roc的推薦下,我找到了這個InstantClick.js,仔細查看了官網(wǎng)的英文文檔,發(fā)現(xiàn)InstantClick.js有個很好的實現(xiàn)思路(how-it-works)。

在訪問者點擊一個鏈接之前( 鼠標測試:test yourself here ):

  • 懸停 hover (hover->click之間200ms左右)
  • 鼠標按下 Mousedown (Mousedown->click之間100ms左右),
  • Touchstart 手機觸碰

這兩個事件之間通常有200ms的間隔,InstantClick 利用這個時間間隔預加載頁面。這樣當你點擊頁面的時候,其實頁面已經(jīng)加載到本地了,呈現(xiàn)當然也就會很快。

當然InstantClick 也使用了 Pjax: pushState 和 Ajax 技術(shù)

同時我試用了下,的確效果不錯。如果你的博客需要實現(xiàn)Pjax,InstantClick會是個不錯的選擇。

使用方法

下載instantclick.js。instantclick.min.js僅僅2.5Kb,很小

使用

<script src="instantclick.min.js" data-no-instant></script>
<script data-no-instant>InstantClick.init();</script>

注:

  • data-no-instant的含義是,這個JS只會運行一次,需要根據(jù)自己的情況,設(shè)置
  • 如果想避免不必要的預加載,關(guān)閉hover,啟用Mousedown是個不錯的選擇,moursedown意味著已經(jīng)點擊鏈接

查看效果

打開chrome console,查看network視圖,會在每次hover時,都可以先加載頁面,在click時展示結(jié)果頁面。

由于沒有一個好的截動畫軟件,所以沒有g(shù)if動畫展示

擴展

InstantClick也提供了幾個事件可以設(shè)置。

  • change 頁面更改完畢,即click觸發(fā)加載后
  • fetch 頁面開始預加載
  • receive 頁面預加載完畢,即:hover或mousedown觸發(fā)的預加載,但不一定會change,因為用戶不一定click

實例

因為使用ajax,所以google ga不會統(tǒng)計PV,所以增加change方法

<script src="instantclick.min.js" data-no-instant></script>
<script data-no-instant>
/* Google Analytics code here, without ga('send', 'pageview') */
 
InstantClick.on('change', function() {
 ga('send', 'pageview', location.pathname + location.search);
});
 
InstantClick.init();
</script>

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • JavaScript對象屬性操作實例解析

    JavaScript對象屬性操作實例解析

    這篇文章主要介紹了JavaScript對象屬性操作實例解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • 淺談Javascript如何實現(xiàn)勻速運動

    淺談Javascript如何實現(xiàn)勻速運動

    這篇文章主要介紹了淺談Javascript如何實現(xiàn)勻速運動的方法及相關(guān)代碼,需要的朋友可以參考下
    2014-12-12
  • 基于JavaScript實現(xiàn)驗證碼功能

    基于JavaScript實現(xiàn)驗證碼功能

    這篇文章主要介紹了基于JavaScript實現(xiàn)驗證碼功能的相關(guān)資料
    2017-04-04
  • JS監(jiān)聽滾動和id自動定位滾動

    JS監(jiān)聽滾動和id自動定位滾動

    這篇文章主要為大家詳細介紹了JS監(jiān)聽滾動和id自動定位滾動,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • js控制fieldset高度的代碼

    js控制fieldset高度的代碼

    js控制fieldset高度的代碼...
    2007-11-11
  • js獲得鼠標的坐標值的方法

    js獲得鼠標的坐標值的方法

    js獲得鼠標的坐標值的方法,需要的朋友可以參考一下
    2013-03-03
  • JS點擊鏈接后慢慢展開隱藏著圖片的方法

    JS點擊鏈接后慢慢展開隱藏著圖片的方法

    這篇文章主要介紹了JS點擊鏈接后慢慢展開隱藏著圖片的方法,實例分析了javascript操作圖片的隱藏與現(xiàn)實技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-02-02
  • 使用Three.js?實現(xiàn)虎年春節(jié)3D創(chuàng)意頁面

    使用Three.js?實現(xiàn)虎年春節(jié)3D創(chuàng)意頁面

    虎年春節(jié)將至,本文使用?React?+?Three.js技術(shù)棧,實現(xiàn)趣味?3D創(chuàng)意頁面,主要包括:ShadowMaterial、?MeshPhongMaterial等基本材質(zhì)的使用、使用?LoadingManager展示模型加載進度、OrbitControls`的緩動動畫、TWEEN簡單補間動畫效果等,感興趣的朋友一起看看吧
    2022-01-01
  • 淺談JavaScript的全局變量與局部變量

    淺談JavaScript的全局變量與局部變量

    下面小編就為大家?guī)硪黄獪\談JavaScript的全局變量與局部變量。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-06-06
  • 微信小程序自定義Dialog彈框

    微信小程序自定義Dialog彈框

    這篇文章主要為大家詳細介紹了微信小程序自定義Dialog彈框,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07

最新評論

开阳县| 牙克石市| 萍乡市| 高淳县| 泾川县| 尚义县| 江源县| 宁远县| 贡觉县| 邯郸县| 彭泽县| 郓城县| 罗定市| 墨江| 卓资县| 抚州市| 六盘水市| 遵义市| 焦作市| 邵阳市| 金川县| 巴南区| 达州市| 仁怀市| 泽州县| 简阳市| 潜山县| 南城县| 蒲城县| 那曲县| 安化县| 凤山市| 泾川县| 资溪县| 浦北县| 花莲县| 庄河市| 溆浦县| 哈巴河县| 郸城县| 天峻县|