代码之家  ›  专栏  ›  技术社区  ›  Willem

DOM内存与CPU管理

  •  1
  • Willem  · 技术社区  · 17 年前

    当用户导航到新页面时,它们将在一个小窗口中以“overflow:hidden;”一个接一个地添加到DOM中:

    <div id="foo" style="width:200px; height:100px;">
      <div id="bar" style="width:999999px">
      </div>
    </div>
    

    当AJAX调用返回success时,div将追加到#bar中。

    当在#foo宽度之外有很多隐藏页面时,它将如何影响浏览器?

    当用户离开div时,是否需要从DOM中删除div?然后,如果用户选择再次导航到AJAX,我需要发出一个新的AJAX请求:(

    谢谢

    2 回复  |  直到 17 年前
        1
  •  2
  •   rama-jka toti    17 年前

    不管人们说GC能为您做什么,不管是在JavaScript、C#还是Java中,都要小心并忘记自动管理的愚蠢承诺。把它清理干净,睡个好觉。

        2
  •  0
  •   John Feminella    17 年前

    现代浏览器布局引擎通常足够智能,不会处理隐藏的元素,因此不会占用太多CPU资源。但是,在某些浏览器中,添加大量具有高度复杂对象图的节点可能会很昂贵,因此我会小心处理。还要注意的是,即使它们没有布局,它们仍然作为DOM的一部分存在,如果这些节点很大,内存使用可能会成为一个问题。