JQery jstree 大数据量问题解决方法


问题解决:生成的树是逐级加载的,在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);
问题解决:生成的树是逐级加载的,在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);

« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3