2013-10-25 42 views
0

我有一个大的页面,有一个大的HTML表格。在Internet Explorer中,渲染内容需要很长时间:可能需要10-15秒才能渲染。有什么方法可以用JavaScript或其他方法来确定页面何时开始渲染以及何时完成渲染?如何找到呈现HTML页面需要多长时间?

注:我想用JavaScript来然后在页面上显示的值。

+0

检查这个** [链接](HTTP:// stackoverflow.com/questions/2516665/how-can-i-monitor-the-rendering-time-in-a-browser)** – super

+2

什么版本的IE浏览器正在测试和如何比较最新IE10 +/FF/Chrome浏览器? –

+0

你可以找到一些指引如何从缩短渲染时间[这个苏答案(http://stackoverflow.com/a/18272010/1169519)。注意注释线程中的链接jsFiddle。 – Teemu

回答

1

enter image description here好,我正想说使用网络瀑布在F12工具,这里是这个页面的截图。绿线表示渲染完成并且用户可以开始交互。

但要做到这一点在JavaScript。所以这需要付出一点努力,但是这样做。转到控制台并执行performance.timing。这会给你一个有很多计时值的对象。这些是刻度值,你需要比较它们以得到实际的毫秒增量。以下是此页面的输出示例。

{ 
    [functions]: , 
    __proto__: { }, 
    connectEnd: 1382671634858, 
    connectStart: 1382671634858, 
    constructor: { }, 
    domainLookupEnd: 1382671634858, 
    domainLookupStart: 1382671634858, 
    domComplete: 1382671635972, 
    domContentLoadedEventEnd: 1382671635377, 
    domContentLoadedEventStart: 1382671635198, 
    domInteractive: 1382671635198, 
    domLoading: 1382671634929, 
    fetchStart: 1382671634858, 
    loadEventEnd: 1382671635974, 
    loadEventStart: 1382671635973, 
    msFirstPaint: 1382671635631, 
    navigationStart: 1382671634796, 
    redirectEnd: 0, 
    redirectStart: 0, 
    requestStart: 1382671634929, 
    responseEnd: 1382671634929, 
    responseStart: 1382671634929, 
    unloadEventEnd: 1382671634796, 
    unloadEventStart: 1382671634796 
} 
+0

谢谢克里斯蒂安我永远无法获得代码来正确格式化在这里大声笑 –

0

肯定的是,在Firefox或Chrome开发者工具一次。您将使用net选项获取时间,并且您会在下载时看到每个文件的下载时间。

+0

OP说** Internet Explorer **。 –

+0

+1 - 使用FF/Chrome的开发工具没有问题 - 如果下载缓慢的问题很容易看到。同样,所有浏览器中都会显示大量的JavaScript问题。 –

+0

我从问题的表述方式假设这是一个IE特定的问题,但也许不是。 –

4

如果您使用的是最新版本的Internet Explorer,则可以使用Javascript NavTiming API,如针对IE的this MSDN article所述。这将允许您使用Javascript读取页面计时数据并显示它。您可以使用IE的Developer Toolbar附加组件。

+0

+1 ...如果它确实是JavaScript - 从IE9开始可用,那么普通的分析器就足够了。 –