gpt4 book ai didi

javascript - 计算估计的页面加载时间

转载 作者:行者123 更新时间:2023-11-30 20:56:13 26 4
gpt4 key购买 nike

是否可以使用 jQuery/Javascript 来计算页面的预计加载时间?

我已经尝试了以下我在网上某处找到的方法,但每次重新加载的时间都会增加 200,当它达到 6000 时,它会重置回 0

var perfData = window.performance.timing,
EstimatedTime = -(perfData.loadEventEnd - perfData.navigationStart),
time = parseInt((EstimatedTime/1000)%60)*100;

if (time >= 700) {
$(window).load(function() {
// Do something
});
} else {
// Do something else
}

如果估计的页面加载时间为 700 毫秒或更长,我希望它使用预加载器。

最佳答案

performance Interface如果使用得当,将会起作用。它与浏览器兼容。

现在,您描述的行为让我相信您只是没有很好地使用它。

«每次重新加载的时间增加 200» 仅表示 perfData.loadEventEnd 等于零。那么你的计算就毫无意义。您只有 perfData.navigationStart,这是 Unix 整数时间。

现在,我将完全删除您在 time 上的数学运算。 EstimatedTime 已经以毫秒为单位。

然后,脚本应在页面完全加载后读取 timing 属性。否则,perfData.loadEventEnd 肯定会为零。

因此在 load 事件处理程序中,使用 setTimeout() 确保脚本将在 load 事件结束后执行。

var loadTime = function(){
setTimeout(function(){
var perfData = window.performance.timing;
var EstimatedTime = (perfData.loadEventEnd - perfData.navigationStart);

if(EstimatedTime>700){
// Something for load time more than 700 ms
}else{
// Something for faster load time
}
},10); // Executes 10 ms after load has ended
};

在标记中:

<body onload="loadTime();">

尝试在 CodePen 中使用它.

你的issue转载在这个other CodePen .

关于javascript - 计算估计的页面加载时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47638595/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com