发布于 2016-12-20 06:17:48 | 140 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

jstree jQuery的Tree控件

jsTree是一个 基于jQuery的Tree控件。支持XML,JSON,Html三种数据源。提供创建,重命名,移动,删除,拖"放节点操作。可以自己自定义创建,删 除,嵌套,重命名,选择节点的规则。在这些操作上可以添加多种监听事件。


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); 


最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务