晕
激我呀JS可以干的基本上我全弄过
http://shawl.qiu.googlepages.com/DomTree.htm
激我呀JS可以干的基本上我全弄过
http://shawl.qiu.googlepages.com/DomTree.htm
解决方案 »
- js open()方法弹出然后屏蔽父窗体
- 大虾帮我看下js换肤,二级页面无法关联的问题
- 求一软件,请各位进来帮忙.
- javascript时间怎么比较前后呀(不是日期)?
- 能否用js模拟用户点击了上传文件的“浏览”按钮?.click()好像只能在IE中执行。
- 如何获取不同框架表单内的值
- highcharts 能不能实现这个样子的图效
- (js)数值转人民币大写的程序!--我也来个
- 如何用HTML或JAVASCRIPT写出点击某个链接,弹出一个小的对话框?
- 怎样在客户端用javascript限制上传图片的大小
- 下拉菜单问题?伸下来的菜单连接不了,现在就却这个项目就搞定了。谢谢大虾们。。
- 文本框内容拖动问题
var arr=[
[1, "根节点", 0, "|0|", 0],
[265,"一级节点1", 1, "|0|1|", 1],
[266,"一级节点2", 1, "|0|1|", 1],
[267,"二级节点1-1", 265, "|0|1|265|", 1],
[268,"三级节点1-1-1", 267, "|0|1|265|267|", 0],
[269,"二级节点2-1", 266, "|0|1|266|", 0]
]
var str="";
function get_nodes(id,node_index){
for(var k=0;k<node_index;k++){
str+="\t";
}
var parent_path="";
for(var i=0;i<arr.length;i++){
if(arr[i][0]==id){
parent_path=arr[i][3];
str+=arr[i][1]+"\n";
parent_path+=id+"|";
for(var j=0;j<arr.length;j++){
if(arr[j][3]==parent_path){
get_nodes(arr[j][0],node_index+1);
}
}
}
}
}
get_nodes(1,0);
alert(str);
</script>
首先,不得不佩服一下你的天才的算法,没想到你用了寥寥几行代码就解决了一个这么复杂的问题
但是,这种算法有个问题,如果数据超过1000行的话
那遍历数组的次数就是
1000*1000=1000000
而循环超过100000次ie就拒绝运行了
这个问题又要如何解决呢,望得到进一步的指点,不胜感激!
然后在每个节点上都加上一个onclick事件,点击显示其子目录
而这些onclick事件调用的是相同的函数
这个方法类似csdn社区左侧的数显示方法
而且也不是很难,适合新手采用分区域显示比较难控制,需要很强的逻辑判断,不推荐
不过其显示速度也是最快的,要是需求高的话,用这个是最合适的