因为项目需要,现在需要做个手风琴菜单,于是自己就瞎整了一下,所用只是less.js  javascript  jquery效果如图:

具体代码如下:

<!DOCTYPE html>

<html>
  <head>
   <title></title>
   <style type="text/less">
          
     .list{
         list-style-image: url(../images/shang.png);
         background:#E0E0E0;
         line-height:2em        
     }
    
      .list1{
         list-style-type:none;
         background:#E0E0E0;
         line-height:2em        
     }
    
     .liBox{
       .list1;
       .listbox{
         .list;
         .div1{
           margin-left:20px
         }
       }
     }  
   </style>

</head>
  <body>
     <div>
       <ul>
          <li id="liBox" class="liBox">
            <ul>
             <li  id="listbox" class="listbox" onclick="toggleClick(this)" >测试</li>
             <div id="box" class="box" hidden>
                <div onclick="test(this)">这是一个测试1</div>
                <div onclick="test(this)">这是一个测试2</div>
                <div onclick="test(this)">这是一个测试3</div>
                <div onclick="test(this)">这是一个测试4</div>
                <div onclick="test(this)">这是一个测试5</div>
                <div onclick="test(this)">这是一个测试6</div>
             </div>
            
               <div hidden>
                  <li id="listboxC" class="listbox" onclick="toggleClick(this)">测试101</li>
                    <div hidden>
                       <div onclick="test(this)">这是一个测试1010</div>
                       <div onclick="test(this)">这是一个测试1011</div>
                       <div onclick="test(this)">这是一个测试1012</div>
                       <div onclick="test(this)">这是一个测试1013</div>
                       <div onclick="test(this)">这是一个测试1014</div>
                    </div>
               </div>
            </ul>
          </li>

<li id="liBox1" class="liBox">
            <ul>
             <li  id="listbox1" class="listbox" onclick="toggleClick(this)">测试1</li>
             <div id="box" class="box" hidden>
                <div onclick="test(this)">这是一个测试7</div>
                <div onclick="test(this)">这是一个测试8</div>
                <div onclick="test(this)">这是一个测试9</div>
                <div onclick="test(this)">这是一个测试10</div>
                <div onclick="test(this)">这是一个测试11</div>
                <div onclick="test(this)">这是一个测试12</div>
             </div>
            </ul>
          </li>
          
           <li id="liBox2" class="liBox">
            <ul>
             <li  id="listbox2" class="listbox" onclick="toggleClick(this)">测试2</li>
             <div id="box" class="box" hidden>
                <div onclick="test(this)">这是一个测试13</div>
                <div onclick="test(this)">这是一个测试14</div>
                <div onclick="test(this)">这是一个测试15</div>
                <div onclick="test(this)">这是一个测试16</div>
                <div onclick="test(this)">这是一个测试17</div>
                <div onclick="test(this)">这是一个测试18</div>
             </div>
            </ul>
          </li>
          
           <li id="liBox3" class="liBox">
            <ul>
             <li id="listbox3" class="listbox" onclick="toggleClick(this)">测试3</li>
             <div id="box" class="box" hidden>
                <div onclick="test(this)">这是一个测试19</div>
                <div onclick="test(this)">这是一个测试20</div>
                <div onclick="test(this)">这是一个测试21</div>
                <div onclick="test(this)">这是一个测试22</div>
                <div onclick="test(this)">这是一个测试23</div>
                <div onclick="test(this)">这是一个测试24</div>
             </div>
            </ul>
          </li>
         </ul>
  </body>
</html>

<script language="JavaScript" type="text/JavaScript" src="../bootstrap/js/less.min.js"></script>
   <script language="JavaScript" type="text/JavaScript" src="../bootstrap/js/jquery.min.js"></script>
  <script type="text/javascript">
      
     function toggleClick(evl){
         $("#"+evl.id).nextAll().toggle();
            if($("#"+evl.id).nextAll().is(":hidden")){
            document.getElementById(evl.id).style.listStyleImage="url(../images/shang.png)";
            } else{
             if($(evl).attr("class")=="listbox"){
                 document.getElementById(evl.id).style.listStyleImage="url(../images/xia.png)";
             }
            }
     }
     function test(evl){
        alert(evl.innerText);
     }
  </script>

一开始不想写的,但是想了一下还是随便的写一下吧。在代码的简化上也许还存在一些问题。因为我项目中是动态加载的数据,所以也就没改正。请各位包含。

html5 手风琴菜单的更多相关文章

  1. jQuery简单的手风琴菜单

    查看效果:http://keleyi.com/keleyi/phtml/menu/5.htm 本菜单的HTML代码和JS代码都简洁,完整源代码: <!DOCTYPE html PUBLIC &q ...

  2. 精选10款超酷的HTML5/CSS3菜单

    今天向大家精选了10款超酷的HTML5/CSS3菜单,给你的网页添加不一样的精彩,一起来围观一下吧. 1.CSS3手风琴菜单 下拉展开带弹性动画 利用CSS3技术可以实现各种各样的网页菜单,我们之前也 ...

  3. Angular.js+Bootstrap实现手风琴菜单

    说是Angular.js+Bootstrap实现手风琴菜单,其实就是用了Bootstrap的样式而已. 上一篇实现了表格+分页,接着学习实现的Demo. 主要练习自定义指令,向指令中传递参数,老规矩先 ...

  4. UIKit的手风琴菜单,单条展开和多条同时展开

    这个也要进来看看哈. 记得加多个属性时的用法就可以了. 因为官网提供太多的SAPMLE啦.. http://www.getuikit.net/docs/accordion.html <div c ...

  5. 简单jQuery 实现手风琴菜单

    简单jQuery 实现手风琴菜单 css代码 如下: *{ margin: 0; padding: 0; } #accordion{ width: 500px; } #accordion>div ...

  6. jQuery手风琴菜单!!!!

    jQuery手风琴菜单 第一次发博客也不知道说点什么好,以前敲得一个手风琴菜单刚刚整理出来了,就来分享个大家 手风琴的排版 排版完事了,接下来就写样式吧,把自己喜欢的颜色或者是图片添加进来,就会变成你 ...

  7. 如何用Mockplus快速做一个手风琴菜单?

    手风琴菜单是一种比较常用的菜单形式,利用原型工具来做这种菜单通常要用到中继器.即使是功能强大的Axure,想实现该效果也比较麻烦.但如果你对Mockplus有所了解,你一定知道,利用Mockplus的 ...

  8. 炫酷实用的CSS3代码垂直手风琴菜单

    今天在微博上看到别人分享的代码,自己拿来自己保存着. 代码效果如下: 下面是源码: index.html <!DOCTYPE html> <html > <head> ...

  9. Jquery UI accordion手风琴菜单

    最近学习jQuery,总结了一些心得. 1.引用 <script type="text/javascript" src=jquery.js></script> ...

随机推荐

  1. 细说CSV

            CSV全称是Comma-Separated Values(逗号分隔值).作为一种数据传输与存储的格式,它显然没有xml,json强大,只能进行一些二维数组的数据处理,但它在项目还是经常 ...

  2. Siebel 集成中的“发布-订阅”与“阅读”

    将 Siebel 应用程序中存储的数据提供给企业中的其他应用程序时,通常需要遵循以下两种基本模式之一: 发布-订阅 阅读 “发布-订阅”是一种机制,根据该机制,一个系统(发布者)将更改或更新的数据提供 ...

  3. FlexPaper实现文档在线浏览(附源码)

    园子里也有关于FlexPaper的文章,但都不怎么详细. 没有较全的参数说明.就连官方网站都没有.没法,最后只得将swf文件反编译后查看了源码才将里面的参数全部弄出来. 好了,废话不多说,开始正题. ...

  4. nginx封IP脚本

    #!/bin/bash max= confdir=/etc/nginx/conf.d/blockips.conf logdir=/var/log/nginx/access.log echo " ...

  5. angular2 里父子组件传值的坑

    1.如果传的是基本类型的值,子组件里改变该值,父组件无变化 2.如果传的是对象,子组件里改变对象里的变量,父组件会变化 3.如果传的是函数,this不会继续指向父组件对象了,如果需要this指向父组件 ...

  6. typescript 添加基础类型的扩展方法

    以时间转换为案例: //声明接口,也是在声明date这个基础类型要定义一个format的扩展方法,不写接口声明会报错 interface Date { Format(fmt:string):strin ...

  7. Codeforces Round #460 (Div. 2)

    A. Supermarket We often go to supermarkets to buy some fruits or vegetables, and on the tag there pr ...

  8. POJ 2531 深搜剪枝

    题意:全局最大割. 分析:有相应的算法,数据量很小,可以枚举源点,汇点,最大流. 这里用DFS,状态定义:分成两个集合,刚开始S集合全部点,然后一个一个放,这是一个回溯的过程. 没剪枝也过了. 剪枝技 ...

  9. js和.net操作Cookie遇到的问题

    Cookie初探1.我理解中的Cookie1.1.Cookie存储位置是客户端的1.2.Cookie存储数据,数据大小也是有限制的 2.Cookie的用法2.1.js对Cookie的操作(网上很多我就 ...

  10. Mysql之inner join,left join,right join详解

    首先借用官方的解释下: inner join(等值连接):只返回两个表中联结字段相等的行: left join(左联接):返回包括左表中的所有记录和右表中联结字段相等的记录: right join(右 ...