代码之家  ›  专栏  ›  技术社区  ›  Theofanis Pantelides

Internet Explorer的优化

  •  3
  • Theofanis Pantelides  · 技术社区  · 16 年前

    总是 Internet Explorer中存在速度问题。请注意,我指的是 ,因为我总是注意它在所有浏览器中显示和工作。

    是否有任何地方或任何人有好的internet explorer编程技巧?我的意思是如何做的事情,所以它或多或少是为InternetExplorer优化的。

    我的意思是,我的最新示例是(通过AJAX)从DB返回JSON数据,然后用结果构建页面。来自服务器的响应很小,它会在aaaaall浏览器中即时加载,但在internet explorer中需要5-10秒,具体取决于操作系统和ie版本。

    我说不出话来,我只是想知道我能做些什么。

    示例: http://msdn.microsoft.com/en-us/library/ms533019(VS.85).aspx http://www.quirksmode.org/dom/innerhtml.html http://blog.dynatrace.com/2009/12/12/understanding-internet-explorer-rendering-behaviour/

    -提奥

    5 回复  |  直到 16 年前
        1
  •  7
  •   Robusto    16 年前

    简短回答:不要在IE中使用document.createElement(“div”)之类的DOM方法来创建标记。改为使用字符串构建HTML。

        2
  •  3
  •   Sam Hasler zpesk    16 年前

    你可以用 dynaTrace AJAX Edition 在IE中评测你的站点,看看是什么让它慢下来的。

        3
  •  1
  •   JonathanK    16 年前

    如果您在web应用程序中使用了大量自定义js,并且正在寻找一些最佳实践,我可以推荐几个网站: jspatterns.com IE + JavaScript Performance Recommendations . 这是一个很好的插电机会 Douglas Crockford's Javascript: The Good Parts 对于将军js zen。

        4
  •  1
  •   Anil Namde    16 年前

    我想 this

        5
  •  0
  •   Kyle Nunery    16 年前

    在IE6中构建页面时,我遇到了类似的问题,并最终进行了纯字符串连接以获得可接受的性能。我的第一次尝试使用jquery(当时是1.2.6)来构建元素和添加属性,但结果证明太慢了。手动将html构建为字符串,然后在元素上设置innerHtml属性以显示表要快得多。关于IE6,jQuery1.4+要快得多,所以这可能不再适用。

    在for循环中使用中间字符串似乎也能提高性能,即不要只在一个大字符串上使用“+=”。在for循环中,为表行添加一个字符串,并将其附加到每个循环的大字符串中。这可能是一种尝试。

    -在IE6中切换css类比较慢,例如,最好在元素的样式属性中设置背景色。