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 lazyload 的重复加载错误以及修复方法
Nov 19 Javascript
Google 静态地图API实现代码
Nov 19 Javascript
jQuery aminate方法定位到页面具体位置
Dec 26 Javascript
JavaScript中的typeof操作符用法实例
Apr 05 Javascript
jQuery实现360°全景拖动展示
Mar 18 Javascript
js代码验证手机号码和电话号码是否合法
Jul 30 Javascript
JS实现带有3D立体感的银灰色竖排折叠菜单代码
Oct 20 Javascript
JS与jQuery遍历Table所有单元格内容的方法
Dec 07 Javascript
轻松实现Bootstrap图片轮播
Apr 20 Javascript
利用AngularJs实现京东首页轮播图效果
Sep 08 Javascript
纯JS实现只能输入数字的简单代码
Jun 21 Javascript
js实现左右两侧浮动广告
Jul 09 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学习笔记 PHP面向对象的程序设计
2011/06/13 PHP
php遍历CSV类实例
2015/04/14 PHP
一页面多XMLHttpRequest对象
2007/01/22 Javascript
Use Word to Search for Files
2007/06/15 Javascript
javascript动画之圆形运动,环绕鼠标运动作小球
2010/07/20 Javascript
学习JavaScript设计模式(单例模式)
2015/11/26 Javascript
AngularJS使用ng-repeat指令实现下拉框
2016/08/23 Javascript
JS新包管理工具yarn和npm的对比与使用入门
2016/12/09 Javascript
jquery 正整数数字校验正则表达式
2017/01/10 Javascript
JS常见简单正则表达式验证功能小结【手机,地址,企业税号,金额,身份证等】
2017/01/22 Javascript
weex里Vuex state使用storage持久化详解
2017/09/09 Javascript
React+Antd+Redux实现待办事件的方法
2019/03/14 Javascript
nodeJs的安装与npm全局环境变量的配置详解
2020/01/06 NodeJs
原生JS与JQ获取元素的区别详解
2020/02/13 Javascript
Vue包大小优化的实现(从1.72M到94K)
2021/02/18 Vue.js
python探索之BaseHTTPServer-实现Web服务器介绍
2017/10/28 Python
python Pygame的具体使用讲解
2017/11/03 Python
树莓派动作捕捉抓拍存储图像脚本
2019/06/22 Python
python 梯度法求解函数极值的实例
2019/07/10 Python
简单了解Python3里的一些新特性
2019/07/13 Python
python:按行读入,排序然后输出的方法
2019/07/20 Python
python函数参数(必须参数、可变参数、关键字参数)
2019/08/16 Python
Python打开文件、文件读写操作、with方式、文件常用函数实例分析
2020/01/07 Python
Python叠加矩形框图层2种方法及效果
2020/06/18 Python
Python配置pip国内镜像源的实现
2020/08/20 Python
基于HTML5 Canvas的3D动态Chart图表的示例
2017/11/02 HTML / CSS
Ashford台湾:以折扣价提供奢华的男女用表款
2019/12/04 全球购物
信息系统专业个人求职信范文
2013/12/07 职场文书
关于廉洁的广播稿
2014/01/30 职场文书
委托公证书范本
2014/04/03 职场文书
平面设计师岗位职责
2014/09/18 职场文书
《假如》教学反思
2016/02/17 职场文书
Python趣味挑战之给幼儿园弟弟生成1000道算术题
2021/05/28 Python
OpenCV图像变换之傅里叶变换的一些应用
2021/07/26 Python
低门槛开发iOS、Android、小程序应用的前端框架详解
2021/10/16 Javascript
Python测试框架pytest核心库pluggy详解
2022/08/05 Golang