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 相关文章推荐
jQuery1.5.1 animate方法源码阅读
Apr 05 Javascript
基于jquery实现的鼠标拖拽元素复制并写入效果
Aug 23 Javascript
js控制web打印(局部打印)方法整理
May 29 Javascript
JavaScript控制两个列表框listbox左右交换数据的方法
Mar 18 Javascript
JS获取IMG图片高宽的简单实例
May 17 Javascript
AngularJS ng-bind 指令简单实现
Jul 30 Javascript
利用纯JS实现像素逐渐显示的方法示例
Aug 14 Javascript
Angularjs cookie 操作实例详解
Sep 27 Javascript
Node.js引入UIBootstrap的方法示例
May 11 Javascript
webpack + vue 打包生成公共配置文件(域名) 方便动态修改
Aug 29 Javascript
vue quill editor 使用富文本添加上传音频功能
Jan 14 Javascript
vuex实现购物车功能
Jun 28 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
常用表单验证类,有了这个,一般的验证就都齐了。
2006/12/06 PHP
Linux下进行MYSQL编程时插入中文乱码的解决方案
2007/03/15 PHP
PHP语言中global和$GLOBALS[]的分析 之二
2012/02/02 PHP
PHP中的cookie不用刷新就生效的方法
2012/02/04 PHP
微信公众平台网页授权获取用户基本信息中授权回调域名设置的变动
2014/10/21 PHP
PHP实现可添加水印与生成缩略图的图片处理工具类
2018/01/16 PHP
PHP常见数组排序方法小结
2018/08/20 PHP
PHP pthreads v3使用中的一些坑和注意点分析
2020/02/21 PHP
JavaScrip单线程引擎工作原理分析
2010/09/04 Javascript
js播放wav文件(源码)
2013/04/22 Javascript
jQuery中noconflict函数的实现原理分解
2015/02/03 Javascript
Jquery中find与each方法用法实例
2015/02/04 Javascript
axios中cookie跨域及相关配置示例详解
2017/12/20 Javascript
使用async-validator编写Form组件的方法
2018/01/10 Javascript
js实现动态改变radio状态的方法
2018/02/28 Javascript
echarts鼠标覆盖高亮显示节点及关系名称详解
2018/03/17 Javascript
Angular封装搜索框组件操作示例
2019/04/25 Javascript
Python实现ssh批量登录并执行命令
2016/10/25 Python
python简单实例训练(21~30)
2017/11/15 Python
Python 爬取携程所有机票的实例代码
2018/06/11 Python
使用Python绘制台风轨迹图的示例代码
2020/09/21 Python
python调用摄像头的示例代码
2020/09/28 Python
html2 canvas生成清晰的图片实现打印功能
2019/09/23 HTML / CSS
自动化专业职业生涯规划书范文
2014/01/16 职场文书
培训自我鉴定
2014/01/31 职场文书
公司门卫岗位职责范本
2014/07/08 职场文书
三分钟自我介绍演讲稿
2014/08/21 职场文书
群众路线对照检查剖析材料
2014/10/09 职场文书
党员民主评议总结
2014/10/20 职场文书
2015商场元旦促销活动策划方案
2014/12/09 职场文书
行政助理岗位职责范本
2015/04/11 职场文书
同意落户证明
2015/06/19 职场文书
催款函范本大全
2015/06/24 职场文书
商业计划书格式、范文
2019/03/21 职场文书
MySQL系列之十四 MySQL的高可用实现
2021/07/02 MySQL
Linux中如何安装并部署Redis
2022/04/18 Servers