为此查看了所有的堆栈,但没有发现任何有用的东西。我是JS的小伙伴,所以这里就是。
我找到了这个有用的代码片段来查找我的junit webdriver测试的onload页面时间 -
window.onload = function(){
setTimeout(function(){
var time = performance.timing.loadEventEnd - performance.timing.navigationStart;
console.log(time);
}, 0);
}
我的问题:如何获取“时间”变量值?我正在使用Java和webdriver的JavascriptExecutor执行脚本。我需要这个,因为有时loadEventEnd = 0,因为页面还没有完成加载。如果我发出警报(loadEvent - navStart),则值会正确显示。我只需要在我的std java输出中打印出这个值。
尝试:
window.onload = function() {
setTimeout(calcTime(), 0);
};
function calcTime() {
var t = performance.timing.loadEventEnd - performance.timing.navigationStart;
return t;
};
return calcTime();
在这种情况下,我确实打印出时间但是 loadEventEnd仍然返回0(我得到t = -1386648543791)。我希望在onload事件完成时触发calcTime(),但似乎没有。 我缺少什么?
我也试过了一个回调方法,但似乎总是返回一个空值。可能不会在那里做点什么,但如果可以,我会避免使用这种方法。