`

简单的js树-rTree,可负载25万个节点(非ajax),代码少,易用易懂。更新checkbox补丁代码(在7楼)

阅读更多
这是我写的第一个js的控件,修修改改快大半年了,公司的老项目里在用。
废话不多说,直接说特点吧!
r.setNodedbc(true);根(有子节点)是否可以双击打开关闭。
r.setNodehref(false);根(有子节点)是否可以触发事件。
r.setLazy(false);是否延迟生成树。
r.canAlterbg(true);点击节点后改变背景色。这是用jquery做得补丁式的功能。
8个参数 id,父id,显示字符,关闭时图片路径,打开时图片路径,href的路劲/调的js方法,目标,是否关闭(lazy=true时无效)。
我觉得最大的特色就是lazy,我写的时候发现,树慢就慢在构造上,加载数据到不慢,所以lazy就是数据一次性加进去,但一次只生成一层。如果要打开好几层的话,可以自己调openNode()方法。
像大家说的checkbox等功能,我做过例子,是通过jquery后期再添加进去的,觉得jquery打补丁真的不错。
号称的250000条数据,是在全部都是随机节点的情况下,不死机的状况。就是一层的节点不能过大。。不然也会死。
代码很少200行,注释70行,大家如果用得上的话,我就最开心不过了!!!
下面是构造的代码,同dtree,有啥意见多提提,我好再改进,谢谢啦!!!

!!!!!!如果用js方法的话 参数要用&quot包起来。如 javascript:afun("xxx");!!!!!!!!!!!!

全部打开按钮,只适用于不使用lazy的情况

var r=new rTree("r");
r.setNodedbc(true);//双击开关节点
r.setNodehref(false);//根是否能绑事件 
r.setLazy(false);//延时构造树 要加入1000条以上节点时,请设为true
r.canAlterbg(true);//点击节点后,改变节点背景色
r.add(1,0,"a哈罗",'images/folderclose.gif','images/imgfolder.gif','javascript:alert("我们都是哈罗!!!")');
r.add(2,1,"男哈罗",'images/hello1.gif','',"./baidu.mht");
r.add(3,1,"b哈罗",'','images/hello1.gif');
r.add(4,1,"c哈罗");
r.add(5,1,"d哈罗");
r.add(6,2,"e女哈罗",'','',"images/hello1.jpg","show");
r.add(7,2,"f哈罗");
r.add(8,3,"g哈罗");
r.add(9,3,"h哈罗","","","","",true);
r.add(10,3,"i哈罗");
for(var i=11;i<11;i++){//设置随机的节点,10000的话还是很快的。。刷的一下就出来
	r.add(i,parseInt(Math.random()*i),"测试"+i);
}
//r.useBgImg("images/green.jpg");
r.startTree();

分享到:
评论
108 楼 rowanh 2011-09-28  
FXWran 写道
楼主不回复啊

我现在悲剧的在做Adobe的BPM中。。基本就是个工具使用工人了。
107 楼 FXWran 2011-09-25  
楼主不回复啊
106 楼 wwj5256 2010-08-27  
mark一下  现在用dtree 想换显示方式 无从下手 用这个试试 ^ ^

ps: 说rtree垃圾的人请自重, lz的水平明显已经比你高了一大截
105 楼 only_xxp 2010-08-13  
人气好高哦!
104 楼 ssslovezs 2010-08-13  
支持下。我刚下了。
103 楼 jht_18 2010-08-05  
怎么一直在论坛建设中...
102 楼 javabrother 2010-08-05  
25W 很漂亮啊。
請問下,這個樹是在 初始化的時候開始加載嗎?支持click等事件加載嗎? 就是說我在頁面上輸入一個節點的名稱,事件提交后,把這個節點的下面的子節點查出來   mztreeview 不支持事件,只能在代碼中初始化的時候加載,所以問了你這個問題。
101 楼 Jassicr 2010-08-04  
我初学js,看得懂一点点,可是写代码完全头晕,不知道从哪里着手,怎么办?
100 楼 yangjunwish 2010-08-02  
谢谢LZ分享
99 楼 angel243fly 2010-07-26  
先学习下,谢谢LZ分享
98 楼 remindlee 2010-07-26  
简单易用,不错的插件,如果能有JQUERY版本更佳
97 楼 anyasir 2010-07-23  
感谢分享。。。。最近要用这个。。老大说自己搞,都没给我机会。。
96 楼 alanakira 2010-07-22  
很好,很简单,经过我修改后能用用
95 楼 xiaobadi 2010-07-05  
楼主辛苦了,我感觉这是我见过最简单的树
94 楼 359468787 2010-07-04  
这个树形控件,怎么样才能获得当前节点(包括子节点)所有的ID啊?


顺便说一句,这破网站太垃圾了,回复个帖子居然还得TMD回答N个问题,搞了半个小时,真恶心!以前都上CSDN感觉比这个网站强多了!
93 楼 wmwdg 2010-03-12  
虽然暂时用不到,还是支持一下。
92 楼 hiyoku 2010-03-08  
搞定
如有问题,请多指教!

代码如下:
91 楼 hiyoku 2010-03-07  
请问楼主,我想在同一个页面用多棵这样的树,请问应该如何修改代码?请给出示例。谢谢
90 楼 xiaobaozi 2010-03-05  
谢谢楼主分享太好了,再次表示感谢!
89 楼 meadlai 2010-03-04  
支持动态加载吗?呵呵
网页7已经加载完毕,用js还能添加节点吗?

相关推荐

Global site tag (gtag.js) - Google Analytics