JavaScript伸缩的菜单

原创 2013年12月03日 11:31:48
<!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代码段 Item2 --伸缩菜单栏

伸缩菜单栏点击标题时判断该标题下的菜单是否显示,如果是显示的则将其隐藏,如果是隐藏的则将其显示出来。 Document *{margin:0; pad...

Javascript 垂直滑动伸缩菜单

Javascript 垂直滑动伸缩菜单

使用纯JavaScript+CSS制作伸缩菜单

不用框架,纯JavaScript+CSS制作的二级伸缩菜单,简单易懂,具有很强的定制性和重复开发性。程序说明:    页面调用方法:    "http://www.w3.org/TR/xhtml1/D...

JavaScript+CSS下拉菜单系列(三)——伸缩不限,高度不固定的带缓动的下拉菜单

跟之前菜单示例文章图片素材一样: 代码: css+javascript下拉菜单系列(三) body{background-color:#FFFFFF;} #content{ wi...

伸缩菜单可定制

  • 2014年06月19日 16:58
  • 6KB
  • 下载

【NGUI】UIPlayTween实现菜单栏伸缩功能

现在可以看到许多手游都有功能菜单栏伸缩的效果,可以节省屏幕的占用空间,起到美观的作用。实现这个功能很简单,方法也很多。下面我们就来看看其中的一种,使用NGUI的UIPlayTween的方式: 1.准备...

类似QQ的伸缩菜单

  • 2008年04月03日 23:23
  • 9KB
  • 下载

jquery侧边伸缩菜单可改样式

  • 2009年12月19日 15:44
  • 35KB
  • 下载

html+ js+ jq+css导航条菜单的制作(水平,竖直,伸缩,带有动画效果等等。。。)

第一种导航菜单,最普通的:(竖直的) *{margin: 0;padding: 0;font-size: 14px;} ul{list-style: none;width:...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JavaScript伸缩的菜单
举报原因:
原因补充:

(最多只允许输入30个字)