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 相关文章推荐
JavaScript使用过程中需要注意的地方和一些基本语法
Aug 26 Javascript
使用insertAfter()方法在现有元素后添加一个新元素
May 28 Javascript
判断日期是否能跨月查询的js代码
Jul 25 Javascript
Jquery对select的增、删、改、查操作
Feb 06 Javascript
jQuery+AJAX实现网页无刷新上传
Feb 22 Javascript
jQuery取得iframe中元素的常用方法详解
Jan 14 Javascript
jQuery插件pagination实现无刷新分页
May 21 Javascript
简单实现js点击展开二级菜单功能
May 16 Javascript
简单谈谈关于 npm 5.0 的新坑
Jun 08 Javascript
javaScript实现游戏倒计时功能
Nov 17 Javascript
详解React 条件渲染
Jul 08 Javascript
JQuery基于FormData异步提交数据文件
Sep 01 jQuery
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
30个php操作redis常用方法代码例子
2014/07/05 PHP
ecshop后台编辑器替换成ueditor编辑器
2015/03/03 PHP
php实现简单的语法高亮函数实例分析
2015/04/27 PHP
在WordPress中安装使用视频播放器插件Hana Flv Player
2016/01/04 PHP
PHP中strcmp()和strcasecmp()函数字符串比较用法分析
2016/01/07 PHP
php+html5+ajax实现上传图片的方法
2016/05/14 PHP
PHP定义字符串的四种方式详解
2018/02/06 PHP
Chrome中JSON.parse的特殊实现
2011/01/12 Javascript
JQuery.Ajax之错误调试帮助信息介绍
2013/07/04 Javascript
JavaScript导出Excel实例详解
2014/11/25 Javascript
javascript实现框架高度随内容改变的方法
2015/07/23 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之主动触发事件和模拟冒泡处理
2015/11/24 Javascript
js监听键盘事件的方法_原生和jquery的区别详解
2016/10/10 Javascript
jQuery时间日期三级联动(推荐)
2016/11/27 Javascript
bootstrap模态框示例代码分享
2017/05/17 Javascript
Ionic + Angular.js实现验证码倒计时功能的方法
2017/06/12 Javascript
chosen实现省市区三级联动
2018/08/16 Javascript
BootStrap table实现表格行拖拽效果
2018/12/01 Javascript
创建Vue项目以及引入Iview的方法示例
2018/12/03 Javascript
详解VScode编辑器vue环境搭建所遇问题解决方案
2019/04/26 Javascript
Vue在H5 项目中使用融云进行实时个人单聊通讯
2020/12/14 Vue.js
[01:59][TI9趣味视频] 全明星赛奖励
2019/08/23 DOTA
django实现前后台交互实例
2017/08/07 Python
Python读取Word(.docx)正文信息的方法
2018/03/15 Python
对PyQt5基本窗口控件 QMainWindow的使用详解
2019/06/19 Python
Python中的 is 和 == 以及字符串驻留机制详解
2019/06/28 Python
python3 图片 4通道转成3通道 1通道转成3通道 图片压缩实例
2019/12/03 Python
浅谈pymysql查询语句中带有in时传递参数的问题
2020/06/05 Python
在pycharm中使用pipenv创建虚拟环境和安装django的详细教程
2020/11/30 Python
HTML5单页面手势滑屏切换原理
2016/03/21 HTML / CSS
红领巾广播站广播稿
2014/02/01 职场文书
法定代表人授权委托书范文
2014/08/02 职场文书
2014年旅游局法制宣传日活动总结
2014/11/01 职场文书
出租车拒载检讨书
2015/01/28 职场文书
MySQL系列之二 多实例配置
2021/07/02 MySQL
二维码条形码生成的JavaScript脚本库
2022/07/07 Javascript