JS+CSS实现的竖向简洁折叠菜单效果代码


Posted in Javascript onOctober 22, 2015

本文实例讲述了JS+CSS实现的竖向简洁折叠菜单效果代码。分享给大家供大家参考,具体如下:

这是一款JS+CSS竖向简洁的折叠菜单,支持三级分类,红色垂直型,个人感觉非常棒,希望大家喜欢。

运行效果截图如下:

JS+CSS实现的竖向简洁折叠菜单效果代码

在线演示地址如下:

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml2/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>CSS+Js竖向简洁的折叠菜单</title>
<style>
#outer {width:504px; height:510px; position:relative; background:url(images/red_frog.jpg) no-repeat 0px 160px;}
#outer #content {clear:left; position:absolute; left:230px; top:10px; width:250px; z-index:10;}
#menu {list-style-type:none; padding:0; margin:0; width:125px; position:absolute; top:70px; left:0; border:1px solid #fff; border-width:0 1px 1px; z-index:100;}
#menu ul {list-style-type:none; padding:0; margin:0; width:125px;}
#menu li {float:left; background:#657; position:relative; border-top:1px solid #fff;}
#menu li.sub {background:#d30;}
#menu li, #menu li a {display:block; color:#fff; font-family:arial, sans-serif; font-size:11px; line-height:24px; width:125px; text-decoration:none; cursor:pointer; font-weight:bold; text-indent:5px;}
#menu ul,
#menu li.click ul ul,
#menu li.click ul li.hover ul ul {display:none;}
#menu li.hover {color:#ff0; z-index:500;}
#menu li.click {color:#ff0;}
#menu li.click ul {display:block;}
#menu li.click ul li.hover ul, 
#menu li.click ul li.hover ul li.hover ul {display:block; position:absolute; left:110px; top:-1px; border:1px solid #fff; border-width:0 1px 1px;}
#menu li.click ul li.fly {background: #657 url(images/frog_arrow.gif) no-repeat top right;}
#menu li.click ul li.hover {background:#98a;}
#menu li.click ul li.hover ul li {background:#c60;}
#menu li.click ul li.hover ul li.hover ul li {background:#780; z-index:500;}
#menu li.click ul li.hover ul li.fly {background: #c60 url(images/frog_arrow.gif) no-repeat top right;}
#menu li.click ul li.hover ul li.hover {z-index:500; background:#fa4;}
#menu li.click ul li.hover ul li.hover a {color:#000;}
#menu li.click ul li.hover ul li.hover ul li.hover {background:#aa0;}
#menu li.click ul li.hover ul li.hover ul li.hover a {color:#fff;}
#outer img {display:block; float:right;}
#outer p {margin:0px; padding:17px 0 0 0; color:#000; font-size:12px; font-family:arial, sans-serif; text-align:justify;}
</style>
<script type="text/javascript">
clickMenu = function(menu) {
  var getEls = document.getElementById(menu).getElementsByTagName("LI");
  var getAgn = getEls;
  for (var i=0; i<getEls.length; i++) {
      getEls[i].onclick=function() {
        for (var x=0; x<getAgn.length; x++) {
        getAgn[x].className=getAgn[x].className.replace("unclick", "");
        getAgn[x].className=getAgn[x].className.replace("click", "unclick");
        }
      if ((this.className.indexOf('unclick'))!=-1) {
        this.className=this.className.replace("unclick", "");;
        }
        else {
        this.className+=" click";
        }
      }
      getEls[i].onmouseover=function() {
        this.className+=" hover";
      }
      getEls[i].onmouseout=function() {
        this.className=this.className.replace("hover", "");
      }
    }
  }
</script>
</head>
<body onload="clickMenu('menu')">
<div id="outer">
<ul id="menu">
  <li class="sub">Types
    <ul>
      <li><a href="#nogo">Indian</a></li>
      <li><a href="#nogo">韩国</a></li>
      <li class="fly"><a href="#nogo">美国</a>
        <ul>
          <li><a href="#nogo">朝鲜</a></li>
          <li class="fly"><a href="#nogo">南朝鲜</a>
            <ul>
              <li><a href="#nogo">西大街</a></li>
              <li><a href="#nogo">东大街</a></li>
            </ul>
          </li>
        </ul>
      </li>
      <li><a href="#nogo">日本语</a></li>
      <li><a href="#nogo">简体中文</a></li>
    </ul>
  </li>
  <li class="sub">地区分布
    <ul>
      <li class="fly"><a href="#nogo">北京</a>
        <ul>
          <li><a href="#nogo">Hemiphractus</a></li>
          <li><a href="#nogo">Stefania</a></li>
        </ul>
      </li>
      <li class="fly"><a href="#nogo">河南</a>
        <ul>
          <li><a href="#nogo">Acris</a></li>
          <li><a href="#nogo">Anotheca</a></li>
          <li><a href="#nogo">Trachycephalus</a></li>
        </ul>
      </li>
      <li class="fly"><a href="#nogo9">武汉</a>
        <ul>
          <li><a href="#nogo">Boophis</a></li>
          <li><a href="#nogo">Callixalus</a></li>
          <li><a href="#nogo">Chiromantis</a></li>
        </ul>
      </li>
    </ul>
  </li>
  <li class="sub">References
    <ul>
      <li><a href="#">Wikipedia</a></li>
      <li><a href="#nogo11">Encyclopedia</a></li>
    </ul>
  </li>
  <li class="sub">链接
    <ul>
      <li><a href="#nogo">脚本下载</a></li>
      <li><a href="#nogo">百度搜索</a></li>
    </ul>
  </li>
</ul>
</div>
</body>
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
ext实现完整的登录代码
Aug 08 Javascript
raphael.js绘制中国地图 地图绘制方法
Feb 12 Javascript
JavaScript 学习笔记之数据类型
Jan 14 Javascript
JS实现响应鼠标点击动画渐变弹出层效果代码
Mar 25 Javascript
jQuery简单实现上下,左右滑动的方法
Jun 01 Javascript
jQuery给div,Span, a ,button, radio 赋值与取值
Jun 24 Javascript
js从数组中删除指定值(不是指定位置)的元素实现代码
Sep 13 Javascript
jQuery简单实现根据日期计算星期几的方法
Jan 09 jQuery
VuePress 快速踩坑小结
Feb 14 Javascript
vuex 动态注册方法 registerModule的实现
Jul 03 Javascript
jquery实现垂直无限轮播的方法分析
Jul 16 jQuery
Weex开发之地图篇的具体使用
Oct 16 Javascript
浅谈node.js中async异步编程
Oct 22 #Javascript
JS实现不使用图片仿Windows右键菜单效果代码
Oct 22 #Javascript
JS实现新浪博客左侧的Blog管理菜单效果代码
Oct 22 #Javascript
JS+CSS实现大气清新的滑动菜单效果代码
Oct 22 #Javascript
Webpack 实现 Node.js 代码热替换
Oct 22 #Javascript
JS+CSS实现仿msn风格选项卡效果代码
Oct 22 #Javascript
Node.js巧妙实现Web应用代码热更新
Oct 22 #Javascript
You might like
php简单提示框alert封装函数
2010/08/08 PHP
php开发环境配置记录
2011/01/14 PHP
自定义php类(查找/修改)xml文档
2013/03/26 PHP
PHP编写daemon process 实例详解
2016/11/13 PHP
javascript 解决表单仍然提交即使监听处理函数返回false
2010/03/14 Javascript
jquery插件之easing使用
2010/08/19 Javascript
js仿百度有啊通栏展示效果实现代码
2013/05/28 Javascript
javascript 获取模态窗口的滚动位置代码
2013/08/06 Javascript
js setTimeout opener的用法示例详解
2013/10/23 Javascript
JavaScript的null和undefined区别示例介绍
2014/09/15 Javascript
nodejs命令行参数处理模块commander使用实例
2014/09/17 NodeJs
Jquery实现select multiple左右添加和删除功能的简单实例
2016/05/26 Javascript
微信小程序 开发之顶部导航栏实例代码
2017/02/23 Javascript
Angularjs中数据绑定的实例详解
2017/08/25 Javascript
详解基于vue的服务端渲染框架NUXT
2018/06/20 Javascript
vue中vee validate表单校验的几种基本使用
2018/06/25 Javascript
如何实现小程序tab栏下划线动画效果
2019/05/18 Javascript
jquery中attr、prop、data区别与用法分析
2019/09/25 jQuery
npm ci命令的基本使用方法
2020/09/20 Javascript
[01:42]DOTA2 – 虚无之灵
2019/08/25 DOTA
Python六大开源框架对比
2015/10/19 Python
python制作小说爬虫实录
2017/08/14 Python
对python中的iter()函数与next()函数详解
2018/10/18 Python
在PyCharm中三步完成PyPy解释器的配置的方法
2018/10/29 Python
简单易懂Pytorch实战实例VGG深度网络
2019/08/27 Python
python正则表达式实例代码
2020/03/03 Python
Python通过len函数返回对象长度
2020/10/22 Python
python UIAutomator2使用超详细教程
2021/02/19 Python
荷兰领先的百货商店:De Bijenkorf
2018/10/17 全球购物
华硕新加坡官方网上商店:ASUS Singapore
2020/07/09 全球购物
高级文秘工作总结的自我评价
2013/09/28 职场文书
广告学专业求职信
2014/06/19 职场文书
奥巴马开学演讲观后感
2015/06/12 职场文书
先进个人事迹材料(2016推荐版)
2016/03/01 职场文书
JavaWeb Servlet实现网页登录功能
2021/07/04 Java/Android
mysql 获取时间方式
2022/03/20 MySQL