使用HTML5的链接预取功能(link prefetching)给网站提速


Posted in HTML / CSS onDecember 13, 2012

HTML5的链接预取功能(link prefetching)是一个埋在沙里的宝石,至今还很少人知道它的价值。 你可能已经知道了那古老而又闻名的图片预加载功能,链接预取功能就是将此概念由图片扩展到了网页内容(不需要任何AJAX代码)。
它是这样工作的:在页面上添加一个像这样的链接:

复制代码
代码如下:

<link rel="next" href="page2.html">

这样,当你的机器空闲时,浏览器就会自动的在后台把page2.html下载下来。 当用户最终点击了page2.html的链接时,浏览器会从缓存里把这个页面取出来,所以这个页面的加载速度会出乎意料的快。
目前只有火狐浏览器支持这个功能。但是因为火狐目前是世界上拥有第二大用户群的浏览器,所以只要你在HTML页面了加上这样的一句代码,仍有相 当大的一部分访问者能体验到这十分明显的页面加载速度的提高。很酷吧!

你可以在许多情况下可以使用链接预取功能
* 当你有一篇篇幅很长的文章,或在线教程,或图册等,需要分成多页显示时。
* 在你的网站首页预加载那些用户最可能访问的下一页。(可能是一个商品网站上“重点推荐”商品页面,或博客网站上最近的一篇博客)
* 搜索查询页面预加载搜索出来的前几条。
对于静态的内容你还可以使用rel标记实现预取功能:

复制代码
代码如下:

<link rel="prefetch" href="/images/big.jpeg?ca541d">

这里还有其它一些有趣的事需要注意:
* 链接预取功能不久将会在Opera, Chrome 和 Safari 浏览器里实现,但对于Internet Explorer,你估计要等到2020年。
* 如果这种功能被广泛的使用,它会影响你的网站日志和访问统计。请考虑这样的情况,你的一个页面预存取了好几个页面,可用户实际上没有访问到这几个页面。 你的服务器(或统计工具)并不知道这两者之间的区别。
为了分清这个,Firefox会在HTTP头信息里发送X-moz: prefetch信息,但你需要在服务器端有什么东西能识别这种信息。
HTML / CSS 相关文章推荐
CSS3教程(5):网页背景图片
Apr 02 HTML / CSS
CSS3实现内凹圆角的实例代码
May 04 HTML / CSS
css3新单位vw、vh的使用教程
Mar 23 HTML / CSS
css3实现背景模糊的三种方式(小结)
May 15 HTML / CSS
Html5中的桌面通知Notification的实现
Sep 25 HTML / CSS
HTML5拖拽文件到浏览器并实现文件上传下载功能代码
Jun 06 HTML / CSS
html5本地存储 localStorage操作使用详解
Sep 20 HTML / CSS
html5页面结构_动力节点Java学院整理
Jul 10 HTML / CSS
基于MUI框架使用HTML5实现的二维码扫描功能
Mar 01 HTML / CSS
详解如何解决canvas图片getImageData,toDataURL跨域问题
Sep 17 HTML / CSS
HTML5拖放API实现自动生成相框功能
Apr 07 HTML / CSS
html5调用摄像头实例代码
Jun 28 HTML / CSS
HTML5 实现一个访问本地文件的实例
Dec 13 #HTML / CSS
HTML4和HTML5之间除了相似以外的10个主要不同
Dec 13 #HTML / CSS
一张图片能隐含千言万语之隐藏你的程序代码
Dec 13 #HTML / CSS
HTML5 新旧语法标记对我们有什么好处
Dec 13 #HTML / CSS
HTML5自定义data-* data(obj)属性和jquery的data()方法的使用
Dec 13 #HTML / CSS
HTML5 Web存储方式的localStorage和sessionStorage进行数据本地存储案例应用
Dec 09 #HTML / CSS
HTML5 Web Database 数据库的SQL语句的使用方法
Dec 09 #HTML / CSS
You might like
php access 数据连接与读取保存编辑数据的实现代码
2010/05/12 PHP
smarty模板引擎从php中获取数据的方法
2015/01/22 PHP
PHP批量获取网页中所有固定种子链接的方法
2016/11/18 PHP
php处理抢购类功能的高并发请求
2018/02/08 PHP
Yii框架Session与Cookie使用方法示例
2019/10/14 PHP
javascript 全等号运算符使用说明
2010/05/31 Javascript
jquery对dom的操作常用方法整理
2013/06/25 Javascript
浅析LigerUi开发中谨慎载入common.css文件
2013/07/09 Javascript
jQuery插件slicebox实现3D动画图片轮播切换特效
2015/04/12 Javascript
谈谈Jquery中的children find 的区别有哪些
2015/10/19 Javascript
第五篇Bootstrap 排版
2016/06/21 Javascript
bootstrap table实现x-editable的行单元格编辑及解决数据Empty和支持多样式问题
2017/08/10 Javascript
node.js使用zlib模块进行数据压缩和解压操作示例
2020/02/12 Javascript
JavaScript中this的学习笔记及用法整理
2020/02/17 Javascript
JS错误处理与调试操作实例分析
2020/04/13 Javascript
vue axios请求成功却进入catch的原因分析
2020/09/08 Javascript
Python实例一个类背后发生了什么
2016/02/09 Python
Python数组遍历的简单实现方法小结
2016/04/27 Python
Python使用ntplib库同步校准当地时间的方法
2016/07/02 Python
Python随机生成手机号、数字的方法详解
2017/07/21 Python
Python经纬度坐标转换为距离及角度的实现
2020/11/01 Python
CSS3转换功能transform主要属性值分析及实现分享
2012/05/06 HTML / CSS
CSS3中各种颜色属性的使用教程
2016/05/17 HTML / CSS
css3 矩阵的使用详解
2018/03/20 HTML / CSS
HTML5 Canvas+JS控制电脑或手机上的摄像头实例
2014/05/03 HTML / CSS
英国工具中心:UK Tool Centre
2017/07/10 全球购物
澳大利亚自然和有机的健康美容产品一站式商店:Ziani Beauty
2017/12/28 全球购物
澳大利亚窗帘商店:Curtain Wonderland
2019/12/01 全球购物
新闻系毕业生推荐信
2013/11/16 职场文书
清洁工表扬信
2014/01/08 职场文书
酒店采购员岗位职责
2014/03/14 职场文书
创业者迈进成功第一步:如何写创业计划书?
2014/03/22 职场文书
党的群众路线教育实践活动教师自我剖析材料
2014/10/09 职场文书
2019求职信:应届生求职信范文
2019/04/24 职场文书
教你如何使用Python实现二叉树结构及三种遍历
2021/06/18 Python
详细谈谈JavaScript中循环之间的差异
2021/08/23 Javascript