树状结构导航条css+javascript简单实现
来源:互联网 发布:html 多选数据样式 编辑:程序博客网 时间:2024/06/07 07:00
要做一个可以展开折叠的树状导航条,到网上看了一些实现,感觉都比较麻烦,js的代码量都不小,我的应用要求不复杂,但是要求树状结构的内容是可以改变的 。所以最后还是自己试着写了一个。
下面是演示代码,你可以按照自己的需求改变div中的内容,动态的生成div部分代码就可以实现tree结构的动态建立。
<html>
<script>
function changevisible(element){
var children = element.parentNode.childNodes;
for(var i= 0; i<children.length;i++){
if(children[i].nodeName == "DIV"){
var className = children[i].className;
if(className == "show"){
element.className="fold";
children[i].className="hidden";
}
else{
element.className="expend";
children[i].className="show";
}
}
}
}
</script>
<style type="text/css">
div.show{
display:block;
width:100%;
background-color:#339966;
}
div.hidden{
display:none;
}
span.fold{
width:20px;
height:20px;
padding:0px 10px 0px 10px;
background-image:url("P1.gif");
background-repeat:no-repeat;
}
span.expend{
width:20px;
height:20px;
padding:0px 10px 0px 10px;
background-image:url("M1.gif");
background-repeat:no-repeat;
}
span.2blank{
width:20px;
}
span.3blank{
width:40px;
}
span.def{
width:20px;
height:20px;
padding:0px 10px 0px 10px;
background-image:url("D.gif");
background-repeat:no-repeat;
}
</style>
<body>
<div id="sidenav">
<div class="show"><span class="fold" onclick="changevisible(this)"> </span>10
<div class="hidden"><span class="2blank"> </span><span class="fold" onclick="changevisible(this)"> </span>20</div>
<div class="hidden"><span class="2blank"> </span><span class="fold" onclick="changevisible(this)"> </span>21</div>
<div class="hidden"><span class="2blank"> </span><span class="fold" onclick="changevisible(this)"> </span>22
<div class="hidden"><span class="3blank"> </span><span class="def"> </span>30</div>
<div class="hidden"><span class="3blank"> </span><span class="def"> </span>31</div>
</div>
</div>
</div>
</body>
</html>
下面是效果演示:
div.show{display:block;width:100%;background-color:#339966;}div.hidden{display:none;}span.fold{width:20px;height:20px;padding:0px 10px 0px 10px;background-image:url("P1.gif");background-repeat:no-repeat;}span.expend{width:20px;height:20px;padding:0px 10px 0px 10px;background-image:url("M1.gif");background-repeat:no-repeat;}span.2blank{width:20px;}span.3blank{width:40px;}span.def{width:20px;height:20px;padding:0px 10px 0px 10px;background-image:url("D.gif");background-repeat:no-repeat;}
下面是演示代码,你可以按照自己的需求改变div中的内容,动态的生成div部分代码就可以实现tree结构的动态建立。
<html>
<script>
function changevisible(element){
var children = element.parentNode.childNodes;
for(var i= 0; i<children.length;i++){
if(children[i].nodeName == "DIV"){
var className = children[i].className;
if(className == "show"){
element.className="fold";
children[i].className="hidden";
}
else{
element.className="expend";
children[i].className="show";
}
}
}
}
</script>
<style type="text/css">
div.show{
display:block;
width:100%;
background-color:#339966;
}
div.hidden{
display:none;
}
span.fold{
width:20px;
height:20px;
padding:0px 10px 0px 10px;
background-image:url("P1.gif");
background-repeat:no-repeat;
}
span.expend{
width:20px;
height:20px;
padding:0px 10px 0px 10px;
background-image:url("M1.gif");
background-repeat:no-repeat;
}
span.2blank{
width:20px;
}
span.3blank{
width:40px;
}
span.def{
width:20px;
height:20px;
padding:0px 10px 0px 10px;
background-image:url("D.gif");
background-repeat:no-repeat;
}
</style>
<body>
<div id="sidenav">
<div class="show"><span class="fold" onclick="changevisible(this)"> </span>10
<div class="hidden"><span class="2blank"> </span><span class="fold" onclick="changevisible(this)"> </span>20</div>
<div class="hidden"><span class="2blank"> </span><span class="fold" onclick="changevisible(this)"> </span>21</div>
<div class="hidden"><span class="2blank"> </span><span class="fold" onclick="changevisible(this)"> </span>22
<div class="hidden"><span class="3blank"> </span><span class="def"> </span>30</div>
<div class="hidden"><span class="3blank"> </span><span class="def"> </span>31</div>
</div>
</div>
</div>
</body>
</html>
下面是效果演示:
div.show{display:block;width:100%;background-color:#339966;}div.hidden{display:none;}span.fold{width:20px;height:20px;padding:0px 10px 0px 10px;background-image:url("P1.gif");background-repeat:no-repeat;}span.expend{width:20px;height:20px;padding:0px 10px 0px 10px;background-image:url("M1.gif");background-repeat:no-repeat;}span.2blank{width:20px;}span.3blank{width:40px;}span.def{width:20px;height:20px;padding:0px 10px 0px 10px;background-image:url("D.gif");background-repeat:no-repeat;}
- 树状结构导航条css+javascript简单实现
- CSS 实现导航条
- css实现导航条
- javascript+css简单实现树形结构列表
- 导航条的简单实现
- css 最简单的导航条
- 简单的树状导航菜单的实现
- 简单下拉导航(css实现)
- CSS+HTML实现倾斜导航条
- 淘宝分类导航条;纯css实现固定导航栏
- android字母导航条的简单实现
- 导航条(带下拉)简单实现;不喜勿喷!
- android实现简单底部导航条
- XHTML+CSS+JavaScript制作的动态导航条(二)
- XHTML+CSS+JavaScript制作的动态导航条(一)
- css导航条
- 纯css导航条
- CSS 导航条
- Delphi(一) --惯用法
- 用DELPHI实现文件加密压缩
- 浅谈中间件
- Java模拟.NET的连接池
- 由域名得到ip
- 树状结构导航条css+javascript简单实现
- Delphi(二) --探索
- Delphi中高级DLL的编写和调用
- 动态隐藏/显示窗口的标题栏
- XP?我真应该采用吗?
- 获取操作系统,CPU,硬盘等信息
- 如何象杀毒软件那样杀死程序? (100分)
- 自强不息厚德载物
- 判断文件是否正在使用