JavaScript伸缩的菜单简单示例


Posted in Javascript onDecember 03, 2013
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html> 
<head> 
<title>伸缩的菜单</title> 
<style> 
<!-- 
body{ 
background-color:#ffdee0; 
} 
#navigation { 
width:200px; 
font-family:Arial; 
} 
#navigation > ul { 
list-style-type:none;/* 不显示项目符号 */ 
margin:0px; 
padding:0px; 
} 
#navigation > ul > li { 
border-bottom:1px solid #ED9F9F;/* 添加下划线 */ 
} 
#navigation > ul > li > a{ 
display:block;/* 区块显示 */ 
padding:5px 5px 5px 0.5em; 
text-decoration:none; 
border-left:12px solid #711515;/* 左边的粗红边 */ 
border-right:1px solid #711515;/* 右侧阴影 */ 
} 
#navigation > ul > li > a:link, #navigation > ul > li > a:visited{ 
background-color:#c11136; 
color:#FFFFFF; 
} 
#navigation > ul > li > a:hover{ /* 鼠标经过时 */ 
background-color:#990020;/* 改变背景色 */ 
color:#ffff00;/* 改变文字颜色 */ 
} 
/* 子菜单的CSS样式 */ 
#navigation ul li ul{ 
list-style-type:none; 
margin:0px; 
padding:0px 0px 0px 0px; 
} 
#navigation ul li ul li{ 
border-top:1px solid #ED9F9F; 
} 
#navigation ul li ul li a{ 
display:block; 
padding:3px 3px 3px 0.5em; 
text-decoration:none; 
border-left:28px solid #a71f1f; 
border-right:1px solid #711515; 
} 
#navigation ul li ul li a:link, #navigation ul li ul li a:visited{ 
background-color:#e85070; 
color:#FFFFFF; 
} 
#navigation ul li ul li a:hover{ 
background-color:#c2425d; 
color:#ffff00; 
} 
#navigation ul li ul.myHide{ /* 隐藏子菜单 */ 
display:none; 
} 
#navigation ul li ul.myShow{ /* 显示子菜单 */ 
display:block; 
} 
--> 
</style> 
<script language="javascript"> 
function change(){ 
//通过父元素li,找到兄弟元素ul 
var oSecondDiv = this.parentNode.getElementsByTagName("ul")[0]; 
//CSS交替更换来实现显、隐 
if(oSecondDiv.className == "myHide") 
oSecondDiv.className = "myShow"; 
else 
oSecondDiv.className = "myHide"; 
} 
window.onload = function(){ 
var oUl = document.getElementById("listUL"); 
var aLi = oUl.childNodes;//子元素 
var oA; 
for(var i=0;i<aLi.length;i++){ 
//如果子元素为li,且这个li有子菜单ul 
if(aLi[i].tagName == "LI" && aLi[i].getElementsByTagName("ul").length){ 
oA = aLi[i].firstChild;//找到超链接 
oA.onclick = change;//动态添加点击函数 
} 
} 
} 
</script> 
</head> 
<body> 
<div id="navigation"> 
<ul id="listUL"> 
<li><a href="#">Home</a></li> 
<li><a href="#">News</a> 
<ul class="myHide"> 
<li><a href="#">Lastest News</a></li> 
<li><a href="#">All News</a></li> 
</ul> 
</li> 
<li><a href="#">Sports</a> 
<ul class="myHide"> 
<li><a href="#">Basketball</a></li> 
<li><a href="#">Football</a></li> 
<li><a href="#">Volleyball</a></li> 
</ul> 
</li> 
<li><a href="#">Weather</a> 
<ul class="myHide"> 
<li><a href="#">Today's Weather</a></li> 
<li><a href="#">Forecast</a></li> 
</ul> 
</li> 
<li><a href="#">Contact Me</a></li> 
</ul> 
</div> 
</body> 
</html>
Javascript 相关文章推荐
一个可绑定数据源的jQuery数据表格插件
Jul 17 Javascript
jQuery选中select控件 无法设置selected的解决方法
Sep 01 Javascript
jquery子元素过滤选择器使用示例
Jun 24 Javascript
JQuery加载图片自适应固定大小的DIV
Sep 12 Javascript
Jquery ajaxStart()与ajaxStop()方法(实例讲解)
Dec 18 Javascript
JavaScript获取table中某一列的值的方法
May 06 Javascript
Bootstrap时间选择器datetimepicker和daterangepicker使用实例解析
Sep 17 Javascript
js转换对象为xml
Feb 17 Javascript
JavaScript异步加载问题总结
Feb 17 Javascript
解决Mac下安装nmp的淘宝镜像失败问题
May 16 Javascript
使用pm2自动化部署node项目的方法步骤
Jan 28 Javascript
js判断在哪个浏览器打开项目的方法
Jan 21 Javascript
JS window对象的top、parent、opener含义介绍
Dec 03 #Javascript
javascript实现信息的显示和隐藏如注册页面
Dec 03 #Javascript
一个js控制的导航菜单实例代码
Dec 03 #Javascript
JS与C#编码解码
Dec 03 #Javascript
探讨jQuery的ajax使用场景(c#)
Dec 03 #Javascript
浅析JavaScript原型继承的陷阱
Dec 03 #Javascript
解析JavaScript中instanceof对于不同的构造器或许都返回true
Dec 03 #Javascript
You might like
php实现水仙花数示例分享
2014/04/03 PHP
Yii实现MySQL多数据库和读写分离实例分析
2014/12/03 PHP
laravel 关联关系遍历数组的例子
2019/10/10 PHP
Mozilla 表达式 __noSuchMethod__
2009/04/05 Javascript
验证javascript中Object和Function的关系的三段简单代码
2010/06/27 Javascript
Windows8下搭建Node.js开发环境教程
2014/09/03 Javascript
AngularJS中的模块详解
2015/01/29 Javascript
javascript关于open.window子页面执行完成后刷新父页面的问题分析
2015/04/27 Javascript
JavaScript中string对象
2015/06/12 Javascript
在AngularJS中使用AJAX的方法
2015/06/17 Javascript
深入了解JavaScript中的Symbol的使用方法
2015/07/28 Javascript
利用jQuery实现漂亮的圆形进度条倒计时插件
2015/09/30 Javascript
详解JS中Array对象扩展与String对象扩展
2016/01/07 Javascript
Asp.Net之JS生成分页条的方法
2016/11/23 Javascript
Vue实现购物车功能
2017/04/27 Javascript
Vue 2中ref属性的使用方法及注意事项
2017/06/12 Javascript
AngularJS实现页面跳转后自动弹出对话框实例代码
2017/08/02 Javascript
浅谈layui使用模板引擎动态渲染元素要注意的问题
2019/09/14 Javascript
[08:04]TI4西雅图DOTA2前线报道 海涛探访各路人马
2014/07/09 DOTA
Python操作MySQL数据库9个实用实例
2015/12/11 Python
python3.4下django集成使用xadmin后台的方法
2017/08/15 Python
python for 循环获取index索引的方法
2019/02/01 Python
关于python多重赋值的小问题
2019/04/17 Python
python tkinter canvas 显示图片的示例
2019/06/13 Python
Python如何调用外部系统命令
2019/08/07 Python
基于python3实现倒叙字符串
2020/02/18 Python
linux面试题参考答案(4)
2013/01/28 面试题
与C++相比,Java中的数组有什么不同
2014/03/25 面试题
初级Java程序员面试题
2016/03/03 面试题
资产评估专业学生的自我鉴定
2013/11/14 职场文书
总务岗位职责
2013/11/19 职场文书
违反交通安全法检讨书
2014/10/24 职场文书
党员示范岗材料
2014/12/19 职场文书
小石潭记导游词
2015/02/03 职场文书
教师自荐信范文
2015/03/06 职场文书
导游词之无锡古运河
2019/11/14 职场文书