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的链接预取功能(link prefetching)是一个埋在沙里的宝石,至今还很少人知道它的价值,需要的朋友可以了解下
新功能:预加载链接-在用户单击链接之前预取页面,以提高感知的加载速度和用户体验) 增强功能:启用“最小化 CSS / JS”选项后,在本地托管和最小化第三方 CSS 和 JS 文件 增强功能:自动将 font-display:swap ...
HTML5针对国内移动终端的可行性调研 背景 2 HTML5手机浏览器兼容性调查 3...2.14. 链接预取功能 22 第三章 现有HTML5的应用 23 第四章 HTML5扩展 24 Kaltura HTML5 25 FlareVideo 25 Projekktor 25 第五章 调研总结 25
GCC作为广泛使用的开源编译器,在tree-ssa上对循环级数组实现了预取优化。在深入分析GCC4.9循环级数组预取的基本实现机制,以及剖析基于预取收益和分析时间的三种不予预取的代价模型的基础上,得出影响循环数组预取...
HTML5视频预取库。 安装 npm install video-prefetcher 相依性 用法 < video width =" 400 " src =" Google_Developer_Stories.webm " id =" video " > </ video > var VideoPrefetcher = require ...
针对专题型应用中普遍存在的大数据查询的频繁性和模式固定性特点,提出一种基于模板的数据预取和缓存算法,用于加快数据查询响应速度并减轻服务器端负载压力。通过构建数据查询模板,在触发器被激发时调用模板以构建...
归纳了Web预取技术的分类,概括和比较了不同类别的优势和局限性,给出了预取模型的基本框架及每部分的主要功能,并对各种评价标准进行了详细介绍.同时,深入分析和探讨了现有的几种典型预取算法,系统地比较了这些算法的...
预执行帮助线程在预取过程中需要进行动态预取调节,而传统静态枚举控制参数值的控制方法在预取执行过程中保持固定不变,从而使得该方法不能够有效地为主线程提供预取质量保证(quality of service,QoS)。...
针对命名数据网络(named data networking,NDN)移动性增强支持不足的问题,基于城区移动场景提出了一种基于移动预测的内容预取方法(mobility-aware prediction approach for content prefetching,MAP-CP)及扩展...
web数据挖掘一篇很好的文章,希望想了解数据挖掘的人仔细研究,推荐!
检查用户是否处于慢速连接上(使用navigator.connection.effectiveType )或启用了数据保存功能(使用navigator.connection.saveData ) 使用Angular的预取策略预取延迟加载的模块) 为什么 该项目旨在成为站点的...
提出了一种新的用于关系数据库查询缓冲和预取的方法。首先将数据查询语句抽象成由四元组组成的查询模板,同时保存了查询语句的实际参数。基于这些模板和参数,提出了两种智能预取算法以适应两类不同的数据查询需求。...
数据挖掘技术在Web预取中的应用研究.pdf
它: 在视口中检测链接(使用 ) 等待直到浏览器空闲(使用 ) 检查用户是否处于慢速连接上(使用navigator.connection.effectiveType )或启用了数据保存功能(使用navigator.connection.saveData ) 预取链接的...
动态二进制翻译中数据预取优化研究,罗琼程,吴强,动态优化是动态二进制翻译研究中一个十分重要的课题,数据预取优化能提高现代处理器体系结构应用程序性能。基于超级块(SuperBlock)的
Linux 内核中的预取算法 论文 中科大 吴峰光博士的论文
cpu时钟预取实例代码分享,大家参考使用吧
通过对面向链式结构的线程预取性能分析,研究链式数据结构程序热点循环的计算任务量与访存任务量比例特征对线程预取性能的影响。结合多核处理器平台特点,实现了一种适用于链式数据结构的帮助线程间隔预取方法。实验...
内容分发网络(Content Delivery Network,CDN)已成为近年来研究热点领域之一,为减少用户访问时延从而提高网络服务质量,相关研究在CDN缓存技术的基础上引入内容预取技术来克服缓存技术的滞后性并提高CDN中资源...
动态优化是动态二进制翻译研究中一个十分重要的课题,数据预取优化能提高现代处理器体系结构应用程序性能。基于超级块(Superblock)的动态数据预取优化采用软件插桩方式收集应用程序的load访存延迟信息并构造...