一、bootstrap实现

1)水平折叠组件

使用panel和collaspe组件

<!doctype html>
<html lang="zh-hans">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <link rel="stylesheet" href="lib/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="css/test.css">
    <title>test</title>
</head>
<body>

    <div class="row">
        <div class="blog col-sm-6">
            <div class="panel-group" id="accordion">
              <div class="panel panel-info">
                <div class="panel-heading">
                  <h4 class="panel-title">
                    <a data-toggle="collapse" data-parent="#accordion"
                      href="#collapseOne">
                      bobo&leishao
                      <span class="glyphicon glyphicon-chevron-right pull-right"></span>
                    </a>
                  </h4>
                </div>
                <div id="collapseOne" class="panel-collapse collapse in">
                  <div class="panel-body">
                    Nihil anim keffiyeh helvetica, craft beer labore wes anderson
                    cred nesciunt sapiente ea proident. Ad vegan excepteur butcher
                    vice lomo.
                  </div>
                </div>
              </div>

              <div class="panel panel-info">
                <div class="panel-heading">
                  <h4 class="panel-title">
                    <a data-toggle="collapse" data-parent="#accordion"
                      href="#collapseTwo">
                      bobo一二事
                        <span class="glyphicon glyphicon-chevron-right pull-right"></span>
                    </a>
                  </h4>
                </div>
                <div id="collapseTwo" class="panel-collapse collapse">
                  <div class="panel-body">
                    Nihil anim keffiyeh helvetica, craft beer labore wes anderson
                    cred nesciunt sapiente ea proident. Ad vegan excepteur butcher
                    vice lomo.
                  </div>
                </div>
              </div>

              <div class="panel panel-info">
                <div class="panel-heading">
                  <h4 class="panel-title">
                    <a data-toggle="collapse" data-parent="#accordion"
                      href="#collapseThree">
                      磊少一二事
                        <span class="glyphicon glyphicon-chevron-right pull-right"></span>
                    </a>
                  </h4>
                </div>
                <div id="collapseThree" class="panel-collapse collapse">
                  <div class="panel-body">
                    Nihil anim keffiyeh helvetica, craft beer labore wes anderson
                    cred nesciunt sapiente ea proident. Ad vegan excepteur butcher
                    vice lomo.
                  </div>
                </div>
              </div>
            </div>
        </div>

    </div>

    <script src="lib/jquery-2.1.4.min.js"></script>
    <script src="lib/bootstrap/js/bootstrap.min.js">
    <script src="js/test.js"></script>
</div>

</body>

bootstrap实现书评折叠组件

/*blog accordion*/
.blog{
    margin-top:50px;
}
.blog .panel{
    border-radius:;
}
.blog .panel-heading{
    border-radius:;
}
.blog .panel-group .panel+.panel{
    margin-top:;
}
.blog  .panel-heading a{
    display:block;
}
.blog .panel-heading span.glyphicon{
    width:45px;
    line-height:38px;
    font-size:20px;
    margin-top:-13px;
    text-align:center;
    margin-right:-16px;
    background-color:#ccc;
    border-top:2px solid transparent;
}

水平折叠组件的css代码(去除bootstrap默认样式)

2)左右布局可响应的折叠组件(屏幕小时上下布局,屏幕大时导航栏位于内容的左边)

使用bootstrap中的导航元素nav-tabs与collaspe的组合,切换利用data属性,需要自己覆盖掉bootstrap的默认样式

<!doctype html>
<html lang="zh-hans">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <link rel="stylesheet" href="lib/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="css/test.css">
    <title>test</title>
</head>
<body> 

    <h2>垂直的响应式导航</h2>
    <div class="media">
        <div class="pull-left">
            <ul class="nav nav-tabs nav-stacked">
                <li class="active"><a href="#tab1" data-toggle="tab">Responsive Web Design</a></li>
                <li><a href="#tab2" data-toggle="tab">Predefine Layout</a></li>
                <li><a href="#tab3" data-toggle="tab">Our Philosopy</a></li>
                <li><a href="#tab4" data-toggle="tab">What We do?</a></li>
            </ul>
        </div>
        <div class="tab-wrapper media-body">
            <div id="tabContent" class="tab-content">
                <div class="tab-pane fade in active" id="tab1">
                    <h4>Tab1</h4>
                     <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit.</p>
                </div>
                <div class="tab-pane fade" id="tab2">
                    <h4>Tab2</h4>
                     <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit.</p>
                </div>
                <div class="tab-pane fade " id="tab3">
                    <h4>Tab3</h4>
                     <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit.</p>
                </div>
                <div class="tab-pane fade " id="tab4">
                    <h4>Tab4</h4>
                     <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit.</p>
                </div>
            </div>
        </div>

    </div>

    <script src="lib/jquery-2.1.4.min.js"></script>
    <script src="lib/bootstrap/js/bootstrap.min.js"></script>
    <script src="js/test.js"></script>
</div>

</body>

左右垂直布局(html代码)

.nav-tabs>li{
    border-bottom:1px solid #e6e6e6;
}
.nav-tabs{

    border-right:1px solid #e6e6e6;
}
.nav-tabs>li>a{
    background-color:#f5f5f5;
    color:#;
    border-radius:;
    border: none;
    margin-right:;
    padding: 13px 15px;
    line-height:24px;

}
.nav-tabs li:last-child{
    border-bottom: none;
}
.nav-stacked>li+li{
    margin-top:;
}
.nav-tabs>li>a:hover{
  background: #1f1f20;
  color:#fff;
}

.nav-tabs>li.active>a,
.nav-tabs>li.active>a:hover,
.nav-tabs>li.active>a:focus {
  border: ;
  color:#fff;
  background: #1f1f20;
  position: relative;
}
.nav-tabs>li.active>a:after{
  position: absolute;
  content:  "";
  width: auto;
  height: auto;
  border-style:solid;
  border-color: transparent transparent transparent pink;
  border-width: 25px 22px;
  /*恰好是两个左右边界的宽度*/
  right: -44px;
  top:;
}
.tab-wrapper{
    border:1px solid #e6e6e6;
    margin-bottom:20px;
}
.tab-content{
    padding:20px;
}

左右垂直布局(css代码)

二、jquery实现

1)水平折叠实现

<!doctype html>
<html lang="zh-hans">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <link rel="stylesheet" href="css/test.css">
    <title>test</title>
</head>
<body>

    <div class="panel-group" id="accordion">
      <div class="panel">
        <div class="panel-heading">
          <h4 class="panel-title">
            <a  href="#collapseOne">
              bobo&leishao
              <span class="glyphicon glyphicon-chevron-right pull-right"></span>
            </a>
          </h4>
        </div>
        <div id="collapseOne" class="collapse">
          <div class="panel-body">
            Nihil anim keffiyeh helvetica, craft beer labore wes anderson
            cred nesciunt sapiente ea proident. Ad vegan excepteur butcher
            vice lomo.
          </div>
        </div>
      </div>

          <div class="panel-group" id="accordion">
      <div class="panel">
        <div class="panel-heading">
          <h4 class="panel-title">
            <a  href="#collapseOne">
              bobo&leishao2
              <span class="glyphicon glyphicon-chevron-right pull-right"></span>
            </a>
          </h4>
        </div>
        <div id="collapseOne" class="collapse">
          <div class="panel-body">
            Nihil anim keffiyeh helvetica, craft beer labore wes anderson
            cred nesciunt sapiente ea proident. Ad vegan excepteur butcher
            vice lomo.
          </div>
        </div>
      </div>

            <div class="panel-group" id="accordion">
      <div class="panel">
        <div class="panel-heading">
          <h4 class="panel-title">
            <a  href="#collapseOne">
              bobo&leishao3
              <span class="glyphicon glyphicon-chevron-right pull-right"></span>
            </a>
          </h4>
        </div>
        <div id="collapseOne" class="collapse">
          <div class="panel-body">
            Nihil anim keffiyeh helvetica, craft beer labore wes anderson
            cred nesciunt sapiente ea proident. Ad vegan excepteur butcher
            vice lomo.
          </div>
        </div>
      </div>

    <script src="lib/jquery-2.1.4.min.js"></script>

    <script src="js/test.js"></script>
</div>

</body>
 

水平折叠jquery实现(html代码)

.panel-heading a{
    display:block;
    text-decoration:none;
    border-bottom:1px solid pink;
    height:24px;
    line-height:24px;
}
 

水平折叠jquery实现(css代码)

$(function(){
    $(".panel-heading").click(function(){        

        $(this).parents(".panel-group").find(".collapse").hide();
        $(this).siblings(".collapse").show();
        //$(this).next().show();
    });

})

水平折叠jquery实现(jquery代码)

2)左右垂直导航折叠的实现

<!doctype html>
<html lang="zh-hans">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <link rel="stylesheet" href="css/test.css">
    <title>test</title>
</head>
<body> 

    <h2>垂直的响应式导航</h2>
    <div class="accordion">
        <div class="nav-wrapper">
            <ul class="nav-tabs">
                <li class="active"><a href="#tab1" >Responsive Web Design</a></li>
                <li><a href="#tab2"  >Predefine Layout</a></li>
                <li><a href="#tab3"  >Our Philosopy</a></li>
                <li><a href="#tab4"  >What We do?</a></li>
            </ul>
        </div>
        <div class="content-wrapper">
            <div id="tabContent" >
                <div class="tab-pane" id="tab1">
                    <h4>Tab1</h4>
                     <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit.</p>
                </div>
                <div class="tab-pane" id="tab2">
                    <h4>Tab2</h4>
                     <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit.</p>
                </div>
                <div class="tab-pane" id="tab3">
                    <h4>Tab3</h4>
                     <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit.</p>
                </div>
                <div class="tab-pane" id="tab4">
                    <h4>Tab4</h4>
                     <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit.</p>
                </div>
            </div>
        </div>

    </div>

    <script src="lib/jquery-2.1.4.min.js"></script>

    <script src="js/test.js"></script>
</div>

</body>

左右垂直导航折叠实现(html代码)

ul.nav-tabs{
    list-style:none;
    margin:;
    padding:;
    border:1px solid #;
    float:left;
    margin-right:10px;
}
ul.nav-tabs li{
    border-bottom:1px solid #e6e6e6;
}
ul.nav-tabs>li>a{
    display:block;
    text-decoration:none;
    line-height:50px;
    height:50px;
    padding:18px;
}
.active{
    background:#ccc;
}
ul.nav-tabs>li>a:hover{
    background:#ccc;
}
 

左右垂直导航折叠实现(css代码)

$(function(){

    $("ul.nav-tabs>li").click(function(){
        //alert("start");
        $(this).toggleClass("active").siblings().removeClass("active");
        var div_id=$(this).find("a").attr("href");
        $(div_id+".tab-pane").show().siblings().hide();
    });
})

左右垂直导航折叠实现(jquery代码)

综述:

很多框架功能其实用原生jquery或者js也并不复杂,要根据需求灵活选择

前端实战——前端效果accordition的实现的更多相关文章

  1. .NET-架构优化实战-前端优化

    原文:.NET-架构优化实战-前端优化 前言 上一篇<.NET-架构优化实战-梳理篇>整理了基本的业务知识,同时也罗列了存在的问题,本篇主要是针对任务列表的页面进行性能优化. 该篇主要涉及 ...

  2. Web 前端实战:Gitee 贡献图

    前言 这次要做的 Web 前端实战是一个 Gitee 个人主页下的贡献图(在线 Demo),偶尔做一两个,熟悉熟悉 JS 以及 jQ.整体来说这个案例并不难,主要是控制第一个节点以及最后一个节点处于星 ...

  3. vue前端实战注意事项

    1. vue前端实战注意事项 1.1. 预备 1.1.1. Eslint 这是个语法检查工具,我用webstorm作为开发的ide,这个语法检查还是太严格了,一个空格啥的都会报错,对新手来讲还是建议关 ...

  4. Web前端 Web前端和Web后端的区分

    一.绪论 1. 前台:呈现给用户的视觉和基本的操作. 后台:用户浏览网页时,我们看不见的后台数据跑动.后台包括前端.后端. 前端:对应我们写的html.css.javascript 等网页语言作用在前 ...

  5. web标准 浏览器介绍 开发工具介绍 HTML介绍 HTML颜色介绍 规范 HTML结构详解 {前端之前端初识}

    前端之前端初识   前端初识 本节目录 一 web标准 二 浏览器介绍 三 开发工具介绍 四 HTML介绍 五 HTML颜色介绍 六 规范 七 HTML结构详解 一 web标准 web准备介绍: 1. ...

  6. 好程序员web前端分享前端学习路线自学如何找到工作

    好程序员web前端分享前端学习路线自学如何找到工作,自学能不能学会WEB前端并且找到WEB前端开发岗位的工作取决于自身条件,如果基础好,自律性强那么将会容易很多,还有就是自学最难克服的并不是知识点,而 ...

  7. day 41 前端之前端初识

    前端之前端初识   前端初识 本节目录 一 web标准 二 浏览器介绍 三 开发工具介绍 四 HTML介绍 五 HTML颜色介绍 六 规范 七 HTML结构详解 一 web标准 web准备介绍: 1. ...

  8. JQuery实战---窗口效果

    在前面的相关博文中,小编对jquery的相关知识进行了简单的总结,关于jquery的很多小的知识点,都需要我们自己去动手和实践,一行行代码都需要我们自己亲自动手去敲,今天我们继续来学习jquery的相 ...

  9. 后端把Long类型的数据传给前端,前端可能会出现精度丢失的情况,以及解决方案

    后端把Long类型的数据传给前端,前端可能会出现精度丢失的情况.例如:201511200001725439这样一个Long类型的整数,传给前端后会变成201511200001725440. 解决方法: ...

随机推荐

  1. CSS3 Transform——transform-origin

    2012年9月,W3C组织发布了CSS3变形工作草案.CSS3变形允许CSS把元素转变为2D 或3D空间,这个草案包括了CSS3 2D变形和CSS3 3D变形. CSS3变形是一些效果的集合,比如平移 ...

  2. Redis Sentinel哨兵集群

    Redis Sentinel(哨兵集群)是一种高可用的redis部署方案.在集群中的redis-master服务挂掉时,无需人为干预,即可通过哨兵集群的自我调整,实现redis服务的持续可用. 哨兵集 ...

  3. PHP 错误与异常 笔记与总结(2)错误(Fatal)

    (接上) d.Fatal error 致命级别的错误 —— 程序终止执行 [例7]调用一个未定义的方法 <?php echo md6('dee'); echo 'continue'; 输出: ( ...

  4. 总结android项目的基本开发步骤(转帖)

    总结android项目的基本开发步骤(转帖)   做了几个android企业应用项目后,总结了项目的基本开发步骤,希望能够交流.一 应用规划:    ※确定功能.    ※必须的界面及界面跳转的流程. ...

  5. passing parameters by value is inefficient when the parameters represent large blocks of data

    Computer Science An Overview _J. Glenn Brookshear _11th Edition_C Note that passing parameters by va ...

  6. extjs4 树列表 添加子节点 刷新所有父节点数据

    itemclick:function(view, record, item,index){console.log(record.parentNode) for(pNode = record.paren ...

  7. Java Web项目调优原则

    1. 根据oracle生成的awr文件排除是否是数据库或者sql问题 2.配置中间件的dump文件路径,gc log文件路径 3.通过 MemoryAnalyzer 分析 dump文件 4.通过exc ...

  8. Iphone H5上传照片被旋转

    最近做项目发现在Iphone下,我们上传图片都会被翻转,最后查阅资料发现,的确是IOS的问题 不说过程,直接解决方法 iOS下,html方式使用<input type="file&qu ...

  9. [收藏]ASP.NET MVC管道详述

    ASP.NET MVC从诞生到现在已经好几个年头了,这个框架提供一种全新的开发模式,更符合web开发本质.你可以很好的使用以及个性化和扩展这个框架,但这需要你对它有足够的了解.这篇文章主要从整体角度总 ...

  10. 低功耗蓝牙4.0BLE编程-nrf51822开发(10)-描述符

    特性中的属性有两种:属性值或描述符. 支持通知或指示的特性中默认有一个描述符:客户端特性配置描述符(Client Characteristic Configuration Descriptor,CCC ...