Internet explorer cells属性泄漏Internet Explorer上的内存?

Internet explorer cells属性泄漏Internet Explorer上的内存?,internet-explorer,debugging,memory-leaks,cross-browser,appendchild,Internet Explorer,Debugging,Memory Leaks,Cross Browser,Appendchild,他既没有提到泄漏,也没有提到泄漏 它发生在动态创建的行上。这对我们来说是一个问题,因为我们有一个单页web应用程序,其中的表通过ajax定期更新,最终iexplore会消耗所有内存和Windows内存 复制: function process() { var row = document.createElement('tr'); var cell = document.createElement('td'); var text = document.createTextNode();

他既没有提到泄漏,也没有提到泄漏

它发生在动态创建的行上。这对我们来说是一个问题,因为我们有一个单页web应用程序,其中的表通过ajax定期更新,最终iexplore会消耗所有内存和Windows内存

复制:

function process() {
  var row = document.createElement('tr');
  var cell = document.createElement('td');
  var text = document.createTextNode();
  
  // doesn't matter order of these lines:
  row.appendChild(cell);
  cell.appendChild(text);
  
  // this leaks on IE8/9:
  var x = row.cells;
  
  // this alternative doesn't:
  //var x = row.getElementsByTagName("td");
  
  setTimeout(process, 10);
}

process();
(JSFIDLE站点在IE8上不工作,因此发布了上面的代码)

在任务管理器中,观察iexplore的内存使用率每分钟增加大约1 MB。不在FF18/Chrome24中

你知道为什么,或者最好怎么做吗

好像坏了。我的解决方法是用
.getElementsByTagName(“td”)
替换
.cells
,例如在插件中。

单元格
DOM对象,因为它们在不在文档树中时引用自身:

var row = document.createElement('tr');
row.appendChild(cell);
此外,对
cells
属性的调用将返回一个

在IE10中有一个内存泄漏错误: