使用HTML5 Navigation Timing API时,导航开始时间设置为0
navigationStart time set to 0 when using HTML5 Navigation Timing API
我使用HTML5 Navigation Timing API来测量用户在我的网站上感知的页面加载时间,使用以下代码:
// Process load time using "Navigation Timing"
function recordLoadTime ()
{
if (typeof(window.performance) !== "undefined"
&& typeof(window.performance.timing) !== "undefined")
{
if(window.performance.timing.loadEventEnd > 0)
{
var time = window.performance.timing.loadEventEnd
- window.performance.timing.navigationStart;
} else {
setTimeout(recordLoadTime, 1000);
}
}
}
time
变量也被添加到cookie中,并在用户的后续请求中记录在服务器上。
我面临的问题是,记录的时间与当前历元时间非常接近:
- 即CCD_ 2被设置为0
- 但是CCD_ 3具有非零值(即当前历元时间)
我在Chrome/11.0、Chrome/12.0、MSIE 7.0、MSIE 8.0和MSIE 9.0 上看到过这种行为
我暂时解决了这个问题,修改了上面的代码,只在navigationStart
大于0时记录加载时间。但我希望记录所有页面的加载时间。
window.onload = function()
{
setTimeout(function(){
var t = performance.timing;
}, 0);
相关文章:
- 在开始时隐藏FX.slide内容,而不是在单击后隐藏
- 拖动开始时更改可拖动元素的大小
- 如何制作按钮.单击“开始时不运行”
- window.scroll在页面开始时触发
- 当我尝试恢复JWPlayer视频时,它从一开始就开始了
- 如何在父动画开始时激发jquery子函数
- 滚动框滚动工作,但它在开始时返回
- 在JQuery中,'加载'方法'的相对路径在引用项目中的html文件时开始
- 加载页面时开始下载文件
- 幻灯片在加载图像时开始,但在下载所有图像之前不会显示第一个图像
- 高图表系列图,在报价时开始和结束,在最大值结束
- 正则表达式在开始时将字符串与(逗号分隔的)数字匹配,并拆分为数字和其余
- 滚动浏览列表元素不会在第一次点击时开始
- Div 在页眉到达其顶部时开始滚动,当其底部到达页脚时停止滚动
- Javascript Button在开始时调用,而不是之后调用
- 如何在开始时禁用 HTML 中的链接并在之后启用它
- 如何在单击图像时开始播放视频
- 使简单的js小提琴动画在按钮单击而不是页面加载时开始
- JavaScript substr 与从第一个字符开始时的子字符串
- 如何使jQuery加载在其他加载完成时开始