简介

在桌面上:
在用户单击链接之前,他们将鼠标悬停在该链接上。当用户悬停了65毫秒时,他们有两次单击该链接的机会,因此Instant.page会在此时开始预加载,平均需要300毫秒以上的时间才能预加载该页面。
另一种选择是在用户释放鼠标之前即开始按下鼠标时进行预加载。这实际上使未使用的请求为零,同时平均仍将页面负载提高了80毫秒。
在移动:
用户在释放显示器之前就开始触摸他们的显示器,平均需要90毫秒来预加载页面。
另一种选择是在链接可见后立即对其进行预加载。
-来自官网Google翻译

GitHub项目:https://github.com/instantpage/instant.page

使用

使用预加载

  • 官方使用方法:Cloudflare 加速的脚本:

    <script src="//instant.page/3.0.0" type="module" defer integrity="sha384-OeDn4XE77tdHo8pGtE1apMPmAipjoxUQ++eeJa6EtJCfHlvijigWiJpD7VDPWXV1"></script>

    代码添加到网站的</body>标签之前

  • 脚本保存到自己服务器使用:
  • 【脚本下载】
  1. 另存为 instantpage3.0.0.js ,将以下代码添加到网站的</body>标签之前:

    <script type="module" src="‘存放路径或域名目录’/instantpage3.0.0.js"></script>

bootcdn加速:
https://www.bootcdn.cn/instant.page/

<script type="module" src="https://cdn.bootcss.com/instant.page/3.0.0/instantpage.js"></script>

定义预加载

白名单标签属性data-instant ,例:

<a href="https://ensu.cc" data-instant>ensu's blog</a>

黑名单标签属性data-no-instant ,例:

<a href="https://www.baidu.com" data-no-instant>百度</a>

全局允许:在 <body> 中添加 data-instant-allow-query-string 属性

局部允许:在使用的标签中添加 data-instant 属性(和白名单属性一样)

仅预加载部分指定链接(白名单模式):如果只想预加载特定的链接,请在 <body> 中添加一个 data-instant-whitelist 标签,并通过向其添加 data-instant 属性来标记要预加载的链接。



效果

我这边此文的时候刚刚启用,所以对PV的对比图我使用了 SANSHI 的,如下:

注意

预加载可能会存在增加耗费少量 CDN 流量问题,请自行对比后考虑是否使用。

参考整理自:ensu's bloginstant.pageShenyun爱皮哇Sanshi

Last modification:March 20, 2020
如果觉得我的文章对你有用,欢迎打赏!