如何加快IE7中的应用程序运行时间?

时间:2011-07-19 11:06:36

标签: javascript jquery performance internet-explorer-7

我们使用rails(2.3.4),ruby(1.8.2),MySQL,JavaScript,jQuery完成了一个应用程序。这是处理最少6000条记录。我们在表格中显示了这些记录。一开始,Mozilla需要2米才能加载整个页面。我们做了缓存,急切加载,索引。现在Mozilla需要25秒来加载整个页面。但IE-7需要1分30秒来加载页面。

我们不知道为什么IE-7需要花费太多时间。

  1. 任何人都可以帮助我们检测IE-7中的运行时间,并告诉您的指南,以提高IE-7的性能。
  2. IE7中提供了任何附加组件,可以像使用Firebug一样查看AJAX请求时间。

3 个答案:

答案 0 :(得分:4)

使用部分加载。不要尝试一次加载6000条记录,在需要时将它们加载到较小的段中。即使5秒钟加载太长,更不用说25秒或1分30秒。

哦,是的,IE 7的JS引擎很糟糕。

答案 1 :(得分:3)

来自Table Rendering - IE Blog

  

当Internet Explorer遇到表时,它会测量所有内容   渲染之前的表,以便它知道的宽度   列将正确呈现内容。另一方面是Firefox   使用不同的算法,因为它呈现表内容   在它全部通过之前逐步完成。

您可以通过设置CSS规则table-layout: fixed来提高性能。然后,渲染器将根据表格的第一行计算布局。

答案 2 :(得分:0)

IE7很慢,没有办法解决这个基本事实。

我将回答您的第二个问题(关于IE7的调试工具),因为我认为我不能就实际加速IE7的主要观点提供任何有用的建议。

  

IE7中提供了任何附加组件,以便像使用Firebug一样查看AJAX请求时间。

首先要尝试的是IE8或IE9。这些浏览器有一个Developer Tools窗口(可通过F12访问,就像Firebug一样)。它不如Firebug好,但它确实做了很多,它是一个有用的调试工具。它还具有允许您将浏览器切换到IE7兼容模式的功能。这个想法是你可以从IE8或IE9的相对舒适中测试IE7。

缺点是它实际上不是IE7。这只是假装的ID7,并不是特别好的。它可能会也可能不会复制你在IE7中遇到的速度问题,它肯定有自己的错误和怪癖,它们在正常模式下不会出现在真正的IE7或IE8中。

但是所有这一切都说,你可能会运行一些测试并得到一些答案。

第二个建议可能是尝试Firebug Lite。这是Firebug的简化版本,在任何浏览器(但通常是IE)中作为书签运行。它没有Firebug完整版本的所有功能,因为只有在没有编写浏览器插件的情况下才能做到这么多,但它确实做了惊人的数量。如果不出意外,它确实会为您提供console函数,这些函数可以为调试节省生命。

我希望有所帮助。