惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - Franky
N
Netflix TechBlog - Medium
Google Online Security Blog
Google Online Security Blog
月光博客
月光博客
量子位
酷 壳 – CoolShell
酷 壳 – CoolShell
V
V2EX
腾讯CDC
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 聂微东
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
M
MIT News - Artificial intelligence
Vercel News
Vercel News
The GitHub Blog
The GitHub Blog
Hugging Face - Blog
Hugging Face - Blog
博客园 - 【当耐特】
Apple Machine Learning Research
Apple Machine Learning Research
aimingoo的专栏
aimingoo的专栏
博客园 - 三生石上(FineUI控件)
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
MongoDB | Blog
MongoDB | Blog
H
Help Net Security
The Cloudflare Blog
Blog — PlanetScale
Blog — PlanetScale
F
Full Disclosure
G
Google Developers Blog
罗磊的独立博客
Jina AI
Jina AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Y
Y Combinator Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
J
Java Code Geeks
A
About on SuperTechFans
IT之家
IT之家
大猫的无限游戏
大猫的无限游戏
S
SegmentFault 最新的问题
有赞技术团队
有赞技术团队
GbyAI
GbyAI
雷峰网
雷峰网
T
The Blog of Author Tim Ferriss
The Register - Security
The Register - Security
U
Unit 42
D
Docker
Martin Fowler
Martin Fowler
L
LINUX DO - 热门话题
NISL@THU
NISL@THU
阮一峰的网络日志
阮一峰的网络日志
C
Cybersecurity and Infrastructure Security Agency CISA
博客园_首页
Google DeepMind News
Google DeepMind News

飞絮落叶雪 - 博客

老何杂记 30 网站搬家 忍不了一点 一加 15 及其它 WordPress 新主题 Weisay Grace PHP8 导致博客速度变慢 独立博客自省问卷15题 博客细节个性化调整 老何杂记19 省钱小能手(博客搬家小记)
让博客速度快如闪电
Mr.He · 2024-09-11 · via 飞絮落叶雪 - 博客

来我博客的的朋友是否有一种秒开感觉,打开一个链接几乎不需要等待就能瞬间跳转,除了一般cdn静态加速和主机本身的原因外,还使用了一个重要的文件InstantClick。

原理:当我们鼠标放到超链接上到按下鼠标,中间有一个非常简短的过程,InstantClick正是利用这个时间差预加载超链接的内容,点击的时候直接显示出来,让读者有种秒开的感受。

官方解释(机翻):

默认值:鼠标悬停时
当用户将鼠标悬停在链接上时,预加载开始。如果用户的连接良好并且您的页面加载时间不长,则页面将立即显示。
只需按照“入门”中所述初始化 InstantClick即可。
无需对服务器进行额外负载:鼠标按下时
当用户按下鼠标按钮时预加载(单击发生在释放时)。这几乎不会给您的服务器带来任何开销,但仍然会带来“神奇的”速度提升。
要使用,请'mousedown'作为参数传递给InstantClick.init。要使用,请'mousedown'作为参数传递给InstantClick.init。要使用,请'mousedown'作为参数传递给InstantClick.init。要使用,请'mousedown'作为参数传递给InstantClick.init。
InstantClick . init ( '鼠标按下' );
两者之间:鼠标悬停时延迟
如果用户在您选择的延迟时间过去后仍然将鼠标悬停在链接上,则页面将开始预加载。
建议的延迟为 100 毫秒和 50 毫秒。超过 100 毫秒实际上可能比鼠标按下时更糟糕(见下文),少于 50 毫秒可能不会被察觉。
要使 InstantClick 在延迟后预加载,请将延迟时间(以毫秒为单位)作为参数传递给InstantClick.init。
InstantClick.init ( 50 ) ;
移动端无论使用哪种选项,当访问者的手指触摸链接(touchstart)时,预加载都会开始。
如果您的网站针对移动设备进行了优化(Android 上使用设备宽度视口,iOS 上使用FastClick),则“点击”发生在访问者从链接上松开手指时,预加载会有大约 100 毫秒的延迟。
如果您的网站针对移动设备进行了优化(Android 上使用设备宽度视口,iOS 上使用FastClick),则“点击”发生在访问者从链接上松开手指时,预加载会有大约 100 毫秒的延迟。
如果您的网站未针对移动设备进行优化,则取决于操作系统。Android 需要 300 毫秒,iOS 需要 450 毫秒。如果您的网站未针对移动设备进行优化,则取决于操作系统。Android 需要 300 毫秒,iOS 需要 450 毫秒。
同一站点上的 3G 请求通常需要大约 200 毫秒。

选择哪一个
如果您的网站可以处理额外的负载,请在鼠标悬停时进行预加载如果您的网站可以处理额外的负载,请在鼠标悬停时进行预加载。
如果您的网站可能无法实现,请在鼠标按下时进行预加载。无论如何,您的网站仍将比 99% 的网站更快。
如果您想确定您的服务器是否可以,请从 mousedown 开始,这几乎不会给您的服务器带来任何额外的压力。然后使用延迟 100 毫秒的 mouseover。然后延迟 50 毫秒(或者如果您有耐心,可以减少一点)。然后直接使用 mouseover。
如果服务器端分析很重要,则您只能使用鼠标按下,因为使用其他任何方式都会扭曲数据。
缺点:我的博客使用exif插件,需要加载文章里面的图片然后显示出来,使用InstantClick后需要刷新一下才能显示exif信息,不过瑕不掩瑜,让读者大大能快速到达需要的网址就是最大的胜利。

使用方法

  1. 前往InstantClick官网,下载js文件。
  2. 将它上传到博客空间或者cdn空间
  3. 在foot.php放入如下代码
// src后面填写文件路径
<script src="instantclick.min.js" data-no-instant></script>
<script data-no-instant>InstantClick.init();</script>

效果

如本站所示,实测只要支持js的网站都能使用该方法加速浏览,提高读者体验。