如何解决IE中的渲染性能问题

时间:2008-10-17 14:00:11

标签: html windows performance internet-explorer rendering

我们的网络应用程序在某些IE浏览器中呈现速度较慢,在其他浏览器中速度较慢......这似乎是一个HTML呈现问题...页面的前10%立即显示,最后90%需要长达10秒,这是静态内容。我用firefox / yslow运行,渲染非常快。似乎被隔离到一些用户/配置ie。怪癖模式似乎没有什么区别。

是否有可用于帮助我发现渲染瓶颈的工具或应用程序?我在代码中做了一些令人震惊的事吗?这可能是一个JavaScript问题吗?任何帮助或建议将不胜感激。感谢。

7 个答案:

答案 0 :(得分:4)

使用Fiddler来查看加载图像,css,js文件等的时间。换句话说,是缓存问题了吗? Javascript肯定会导致不同浏览器版本的问题。您在某些版本中找到了许多优化,而其他版本则没有。另外,如果可能,请确保您的html格式正确。页面的排列方式也会影响生活。如果您的文档树很深,则可能需要等待渲染大型部分,直到它读取所有子节点。另外需要注意的是,某些工具栏和插件确实可以预先加载,并且可以减慢生命。 HTTP代理可以帮助您至少观察网络状况。

不确定这些想法中是否有任何可能对您的确切问题有所帮助,但它们可以帮助您整体生活。

答案 1 :(得分:3)

如果它在FF或Chrome中运行速度很快,那肯定是一个javascript问题。 IE7在处理大量脚本和复杂的HTML时非常慢。我们有一个sharepoint页面,在IE中渲染需要10秒,在FF和Chrome中需要1秒。我们通过向服务器端处理添加一个计时器并通过Response.Write()将输出发送到客户端来对页面进行基准测试。通过这样做,我们可以确定处理页面的服务器时间和呈现页面的客户端时间(因为您将在屏幕上看到计时器结果,然后等待10秒以完成其余的渲染)。瓶颈是客户端的100%IE。这也解释了为什么速度在不同的人机器上是可变的,因为取决于客户端机器的速度,页面将在8-15秒之间以某种速度呈现。

我们甚至让MS看过这个问题,他们证实IE有一个“丰富的渲染”引擎,速度较慢...... IE8的运行速度要快得多,但今天对任何人都无济于事。

答案 2 :(得分:1)

你在CSS中使用任何行为吗?我已经看到,如果使用太多和/或它们影响太多元素,行为会使应用程序瘫痪。检查潜伏的任何.htc文件。

当然行为只与IE有关,他们使用JavaScript,所以我确信不同的IE版本比其他版本更能胜任它们。

答案 3 :(得分:1)

有一个名为dynaTrace的特殊工具,可以在这个网站免费获得: http://ajax.dynatrace.com/pages/ 这个工具可以真正帮助你,因为它几乎可以跟踪所有内容并专门为IE构建。

答案 4 :(得分:1)

答案 5 :(得分:0)

史蒂夫·索德斯(Steve Souders)对14个(简单)步骤进行了精彩的演示,以提高网页的性能:

http://developer.yahoo.net/blogs/theater/archives/2007/08/steve_souders_high_performance.html

如果它挂在页面中间,我个人要做的第一件事是确保或移动我的所有JavaScript都在页面底部。

IE非常适合做一个糟糕的表演者,特别是使用JavaScript,所以如果你把它移到底层,IE就可以渲染页面,然后继续处理JavaScript。

答案 6 :(得分:0)

我使用HttpWatch来解决IE中的链接资产(图像,脚本,css),网络或HTTP相关问题。有一个免费的&付费版。免费很好,但你失去了一些不错的功能。