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 相关文章推荐
利用JS重写Cognos右键菜单的实现代码
Apr 11 Javascript
Struts2的s:radio标签使用及用jquery添加change事件
Apr 08 Javascript
单击复制文字兼容各浏览器的完美解决方案
Jul 04 Javascript
jQuery选择器源码解读(四):tokenize方法的Expr.preFilter
Mar 31 Javascript
JavaScript实现网页加载进度条代码超简单
Sep 21 Javascript
基于Bootstrap仿淘宝分页控件实现代码
Nov 07 Javascript
JavaScript html5利用FileReader实现上传功能
Mar 27 Javascript
原生JS上传大文件显示进度条 php上传文件代码
Mar 27 Javascript
vue中改变选中当前项的显示隐藏或者状态的实现方法
Feb 08 Javascript
JS中利用FileReader实现上传图片前本地预览功能
Mar 02 Javascript
node 解析图片二维码的内容代码实例
Sep 11 Javascript
vue 微信扫码登录(自定义样式)
Jan 06 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
Zend引擎的发展 [15]
2006/10/09 PHP
开发大型PHP项目的方法
2006/10/09 PHP
PHP 实例化类的一点摘记
2008/03/23 PHP
PHP 第一节 php简介
2012/04/28 PHP
php将图片保存入mysql数据库失败的解决方法
2014/12/27 PHP
几个优化WordPress中JavaScript加载体验的插件介绍
2015/12/17 PHP
简单了解WordPress开发中update_option()函数的用法
2016/01/11 PHP
PHP在线打包下载功能示例
2016/10/15 PHP
Yii全局函数用法示例
2017/01/22 PHP
关于IE BUG与字符串截取substr的解决办法
2013/04/10 Javascript
分享两个手机访问pc网站自动跳转手机端网站代码
2020/12/24 Javascript
百度地图API之本地搜索与范围搜索
2015/07/30 Javascript
JavaScript如何实现在文本框(密码框)输入提示语
2015/12/25 Javascript
javascript的document中的动态添加标签实现方法
2016/10/24 Javascript
JS实现鼠标移上去显示图片或微信二维码
2016/12/14 Javascript
BootStrap TreeView使用实例详解
2017/11/01 Javascript
vue里的data要用return返回的原因浅析
2019/05/28 Javascript
微信小程序前端promise封装代码实例
2019/08/24 Javascript
用Python实现一个简单的能够上传下载的HTTP服务器
2015/05/05 Python
Django入门使用示例
2017/12/12 Python
Python三种遍历文件目录的方法实例代码
2018/01/19 Python
详解Python循环作用域与闭包
2019/03/21 Python
Python检查图片是否损坏及图片类型是否正确过程详解
2019/09/30 Python
将tensorflow模型打包成PB文件及PB文件读取方式
2020/01/23 Python
前端实现背景虚化但内容清晰且自适应 的实例代码
2019/08/01 HTML / CSS
VIVOBAREFOOT赤脚鞋:让您的脚做自然的事情
2017/06/01 全球购物
高中军训感想300字
2014/03/04 职场文书
爱情保证书大全
2014/04/29 职场文书
2014年教师节活动总结
2014/08/29 职场文书
音乐教师个人工作总结
2015/02/06 职场文书
2015年招商引资工作总结
2015/04/25 职场文书
学校元旦晚会开场白
2015/05/29 职场文书
优秀志愿者感言
2015/08/01 职场文书
积极心理学课程心得体会
2016/01/22 职场文书
win10安装配置nginx的过程
2021/03/31 Servers
Android Studio实现简易进制转换计算器
2022/05/20 Java/Android