问题描述:Jquery 结合jstree 动态生成一棵树,如果某一节点下目录超过500个,IE 会提示是否允许JS脚本运行,并且目                  录加载不全,大约只加载了300左右。

问题解决:生成的树是逐级加载的,在open函数中有一个生成节点的代码:

代码
for (var i=0; i<data.length; i++)
{
 var n 
= TREE_OBJ.create(data[i], $(NODE));
 
if (onaddnode) onaddnode(n);
}
                        
var firstChild 
= TREE_OBJ.children(NODE)[0];
if ($(firstChild).attr('id')==-1)
 TREE_OBJ.remove(firstChild);

 

  问题就出 TREE_OBJ.create函数上,这个函数很消耗性能。代码改成如下:

 

代码
var children="";
for (var i=0; i<data.length; i++)
{
  children 
+= TREE_OBJ.parseJSON(data[i]);
}
if (children != "")
  $(NODE).children(
'ul').html(children);
                            
var firstChild 
= TREE_OBJ.children(NODE)[0];
  
if ($(firstChild).attr('id')==-1)
  TREE_OBJ.remove(firstChild);

 

 

相关文章:

  • 2021-09-08
  • 2022-12-23
  • 2021-11-01
  • 2022-02-11
  • 2021-11-29
  • 2022-12-23
  • 2021-09-29
猜你喜欢
  • 2021-12-14
  • 2021-10-19
  • 2021-10-17
  • 2022-12-23
  • 2021-08-03
  • 2021-06-28
  • 2021-09-04
相关资源
相似解决方案