HTML5的链接预取功能(link prefetching)是一个埋在沙里的宝石,至今还很少人知道它的价值。 你可能已经知道了那古老而又闻名的图片预加载功能,链接预取功能就是将此概念由图片扩展到了网页内容(不需要任何AJAX代码)。
它是这样工作的:在页面上添加一个像这样的链接:
<link rel="next" href="page2.html">
这样,当你的机器空闲时,浏览器就会自动的在后台把page2.html下载下来。 当用户最终点击了page2.html的链接时,浏览器会从缓存里把这个页面取出来,所以这个页面的加载速度会出乎意料的快。
目前只有火狐浏览器支持这个功能。但是因为火狐目前是世界上拥有第二大用户群的浏览器,所以只要你在HTML页面了加上这样的一句代码,仍有相 当大的一部分访问者能体验到这十分明显的页面加载速度的提高。很酷吧!
你可以在许多情况下可以使用链接预取功能:
* 当你有一篇篇幅很长的文章,或在线教程,或图册等,需要分成多页显示时。
* 在你的网站首页预加载那些用户最可能访问的下一页。(可能是一个商品网站上“重点推荐”商品页面,或博客网站上最近的一篇博客)
* 搜索查询页面预加载搜索出来的前几条。
对于静态的内容你还可以使用rel标记实现预取功能:
<link rel="prefetch" href="/images/big.jpeg?63750e">
这里还有其它一些有趣的事需要注意:
* 链接预取功能不久将会在Opera, Chrome 和 Safari 浏览器里实现,但对于Internet Explorer,你估计要等到2020年。
* 如果这种功能被广泛的使用,它会影响你的网站日志和访问统计。请考虑这样的情况,你的一个页面预存取了好几个页面,可用户实际上没有访问到这几个页面。 你的服务器(或统计工具)并不知道这两者之间的区别。
为了分清这个,Firefox会在HTTP头信息里发送X-moz: prefetch信息,但你需要在服务器端有什么东西能识别这种信息。
要想获得更多的关于链接预取功能方面的信息,以及更多的例子,请参考Mozilla网站上的相关文章:https://developer.mozilla.org/en/link_prefetching_faq
分享到:
相关推荐
总的来说,HTML5的链接预取功能是一项潜力巨大的优化技术,可以显著提升用户体验,但同时也需要谨慎使用,以确保在提高加载速度的同时,不会对其他方面产生负面影响。通过智能的预取策略和良好的浏览器兼容性处理,...
新功能:预加载链接-在用户单击链接之前预取页面,以提高感知的加载速度和用户体验) 增强功能:启用“最小化 CSS / JS”选项后,在本地托管和最小化第三方 CSS 和 JS 文件 增强功能:自动将 font-display:swap ...
HTML5 File API简化了文件操作,链接预取功能可以预先加载资源,提升用户体验。 报告中提到了几个基于HTML5的扩展应用案例,如Kaltura HTML5用于视频管理和分发,FlareVideo提供了流畅的视频播放体验,Projekktor是...
HTML5视频预取库。 安装 npm install video-prefetcher 相依性 用法 < video width =" 400 " src =" Google_Developer_Stories.webm " id =" video " > </ video > var VideoPrefetcher = require ...
作者使用硬件描述语言Chisel3实现了一个带有LFU替换策略和MSI协议的cache硬件模块,并结合Chisel3构建了NextLine和Stride预取器。进一步,他们设计了一种利用感知机神经网络优化Stride预取器预测准确性的方法,以...
### Web预取技术综述 #### 一、引言 随着互联网技术的飞速发展,用户对于网络服务的需求越来越高,特别是在响应时间和用户体验方面。Web预取技术作为一种有效的手段,能够显著减少用户访问延迟,提高网络服务质量...
针对命名数据网络(named data networking,NDN)移动性增强支持不足的问题,基于城区移动场景提出了一种基于移动预测的内容预取方法(mobility-aware prediction approach for content prefetching,MAP-CP)及扩展...
5. cpu时钟预取的使用场景 cpu时钟预取可以应用于各种需要高效执行的场景,例如游戏开发、科学计算、数据分析等。通过使用 cpu 时钟预取,我们可以提高程序的执行效率,从而提高用户体验。 6. cpu时钟预取与 cache...
web数据挖掘一篇很好的文章,希望想了解数据挖掘的人仔细研究,推荐!
检查用户是否处于慢速连接上(使用navigator.connection.effectiveType )或启用了数据保存功能(使用navigator.connection.saveData ) 使用Angular的预取策略预取延迟加载的模块) 为什么 该项目旨在成为站点的...
申威处理器硬件数据预取技术是指在处理器中使用硬件机制来预取数据,以提高处理器的访存性能。这种技术可以有效地提升处理器的性能,尤其是在处理大规模数据时。然而,硬件数据预取技术的实现也存在一些挑战,如硬件...
该系统的主要特点是使用神经网络算法来实现智能预取功能。神经网络算法可以学习模型特征和访问频率之间的关系,并根据模型特征来预测哪些模型更可能被用户请求到。 系统的关键组件包括: 1. 模型特征提取:从历史...
云端则负责存储和处理大量的数据,并使用数据挖掘技术挖掘用户隐含的兴趣关联规则,建立兴趣关联知识库,以此作为预测用户行为的依据。 总结来说,该研究提供了一种在云端环境下利用数据挖掘技术预测用户行为,并...
多核处理器预取策略研究综述 多核处理器技术的出现极大地提高了计算机的性能,但同时也带来了新的挑战,如内存访问延迟成为影响多核处理器性能的瓶颈。预取技术能够隐藏访问延迟,对提高多核处理器性能具有重要意义...
《Linux预取算法分析与研究》这篇论文详细探讨了Linux操作系统中的预取技术,这是为了提升系统性能,尤其是服务器性能的重要策略。预取技术通过预测并预先加载应用程序即将需要的数据到缓存中,以减少I/O等待时间,...