加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

JQery jstree 大数据量问题的解决方案

发布时间:2018-08-23 07:07:32 所属栏目:业界 来源:站长网
导读:问题描述:Jquery 结合jstree 动态生成一棵树,如果某一节点下目录超过500个,IE 会提示是否允许JS脚本运行,并且目 录加载不全,大约只加载了300左右。 问题解决:生成的树是逐级加载的,在open函数中有一个生成节点的代码: 代码 for (var i=0; idata.le

问题描述: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);

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读