Javascript 如何使用主干jquery和js获取单页应用程序(SPA)的页面加载时间?

Javascript 如何使用主干jquery和js获取单页应用程序(SPA)的页面加载时间?,javascript,cordova,backbone.js,requirejs,single-page-application,Javascript,Cordova,Backbone.js,Requirejs,Single Page Application,我正在使用主干网、jquery和requirejs构建一个移动应用程序。我试图获得PageInit和onShow之间的时间差,但它没有提供适当的加载时间,因为我使用Required js进行延迟加载,并且每个onShow中的延迟加载数量是动态的。例如,如果我在setTimeout中进行操作,有人能帮助计算在DOM中加载所有元素(包括延迟加载和任何其他事件绑定)时页面加载所需的时间吗。 提前感谢。您可以尝试在开始时使用console.time('Timer1'),然后当您要计时的代码完成时,调用c

我正在使用主干网、jquery和requirejs构建一个移动应用程序。我试图获得PageInit和onShow之间的时间差,但它没有提供适当的加载时间,因为我使用Required js进行延迟加载,并且每个onShow中的延迟加载数量是动态的。例如,如果我在setTimeout中进行操作,有人能帮助计算在DOM中加载所有元素(包括延迟加载和任何其他事件绑定)时页面加载所需的时间吗。
提前感谢。

您可以尝试在开始时使用
console.time('Timer1')
,然后当您要计时的代码完成时,调用
console.timeEnd('Timer1')
,这将尽可能精确地控制计时器值。

chrome的页面加载时间扩展可以正常工作。如果您搜索Alexander Vykhodtsev的“页面加载时间”,您应该会找到它。@Icewine我需要在页面加载时动态获取加载时间并记录它。它是一款在ios和android上运行的混合移动应用程序。我知道chrome中的Performance选项卡,但我认为这在这种情况下没有帮助。因此,假设在onShow()事件中有多个require js页面加载,我们需要进入每个页面并放置一个console.log?我认为这不是一个合适的方法,并且只会随着所需页面加载数量的增加而增加复杂性。另外,使用require js完成的页面绑定是异步的,因此在console.log中放置开始和结束时间将是一件令人困惑的事情?如果您像这样定义模块
define(['dep1',dep2',function(dep1,dep2){…})
或者像这样
define(function(require){var dep1=require('bla/dep');…})
那么您告诉require在运行代码之前加载所有依赖项。现在如果您真的使用异步require,那么
require(['dep'],function(){//success callback})
然后您需要仔细监视您的回调或使用承诺跟踪它们的解决方案。