:网页加载过程网站速度详细分析很多文章都会说到网站速度对于用户转化的影响,速度慢的网站用户更容易离开,尤其是可以找到替代内容的情况下
那么如何度量网站的加载速度呢,之前大家的做法是在页面的头部记一下时间:varstart=newDate()
getTime(),然后在页脚计算一下用掉的时间:vartimeUse=newDate()
getTime()–start,把这儿的timeUse用事件的方式提交到GA服务器:_gaq
push(['_trackEvent','timeUse','/home
html','load',timeUse]),最后在GA的事件列表,看事件的平均值来评价页面的加载时间
这样做,可以获得加载时间,但不完整,完整的页面加载是这样的:1、用户打开url链接2、浏览器查询url的dns地址3、提交url请求到服务器端4、服务器端处理5、传输处理好的html文本内容到浏览器6、浏览器解析html,并加载css,js,图片等内容7、加载完成,用户看到完整的页面内容前面的timeUse获取的其实是第6步操作的用时,2到5步的用时都无法获取,假设某个网站的dns查询慢,服务器端处理慢,还是会影响用户的体验,而这个是我们无法度量的
其实dns查询,等待服务器处理等时间,作为浏览器是知道的,于是HTML5规范为这部分的查询,提供了接口,允许javascript来查询详细的用时,具体文档在这儿:https://dvcs
org/hg/webperf/raw-file/tip/specs/NavigationTiming/Overview
html#sec-navigation-timing-interface,调用的例子见这儿:http://www
html5rocks