最新公告  | 
  • CTRL + D 加入收藏不迷路哦

  • 欢迎您光临码云笔记网,一个关注WEB前端开发的个人技术博客!

jquery css垂直手风琴菜单列表制作

分享一个利用jQuery CSS3来完成的垂直手风琴菜单栏,这个适合做web后台系统之类的菜单,这款CSS3手风琴菜单的每一个菜单项都有小图标,而且只能有一项展开,更有意思的是,在菜单折叠和展开式右侧的箭头也会有不错的动画效果。这里我是用<ul><li></li></ul>无序列表和<dl><dt></dt><dd></dd></dl>定义列表结合使用实现的,下面来看一下实现的源码。
效果图:

jquery css垂直手风琴菜单列表制作

HTML代码:

<dl class="list_dl">
        <dt class="list_dt">
            <span class="_after"></span>
            <p>选择器</p>
            <i class="list_dt_icon"></i>
        </dt>
        <dd class="list_dd">
            <ul>
                <li class="list_li">#id</li>
                <li class="list_li">element</li>
                <li class="list_li">.class</li>
                <li class="list_li">*</li>
            </ul>
        </dd>
        <dt class="list_dt">
            <span class="_after"></span>
            <p>属性</p>
            <i class="list_dt_icon"></i>
        </dt>
        <dd class="list_dd">
            <ul>
                <li class="list_li">attr</li>
                <li class="list_li">removeAttr</li>
                <li class="list_li">prop</li>
                <li class="list_li">removeProp</li>
                <li class="list_li">addClass</li>
                <li class="list_li">removeClass</li>
            </ul>
        </dd>
        <dt class="list_dt">
            <span class="_after"></span>
            <p>文档处理</p>
            <i class="list_dt_icon"></i>
        </dt>
        <dd class="list_dd">
            <ul>
                <li class="list_li">append</li>
                <li class="list_li">appendTo</li>
                <li class="list_li">prepend</li>
                <li class="list_li">prependTo</li>
                <li class="list_li">after</li>
                <li class="list_li">before</li>
            </ul>
        </dd>
        <dt class="list_dt">
            <span class="_after"></span>
            <p>事件</p>
            <i class="list_dt_icon"></i>
        </dt>
        <dd class="list_dd">
            <ul>
                <li class="list_li">ready</li>
                <li class="list_li">on</li>
                <li class="list_li">off</li>
                <li class="list_li">bind</li>
                <li class="list_li">one</li>
                <li class="list_li">trigger</li>
                <li class="list_li">hover</li>
                <li class="list_li">click</li>
                <li class="list_li">focus</li>
            </ul>
        </dd>
</dl>

CSS代码:

*{
    margin: 0;
    padding: 0;
    font-family: "Microsoft YaHei", Arial, sans-serif;
    font-size: 14px;
}
.list_dt{
    background: #333;
    color: white;
    width: 120px;
    padding: 0 40px 0 20px;
    height: 34px;
    line-height: 34px;
    cursor: pointer;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    position: relative;
    border-bottom: 1px solid #464646;
}
.list_dt:hover{
    background: #222;
}
.list_dt:hover ._after{
    display: block;
    width: 3px;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: #4285F4;
}
#open{
    background: #222;
}
#open ._after{
    display: block;
    width: 3px;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: #4285F4;
}
.list_dt_icon{
    position: absolute;
    right: 10px;
    top: 9px;
    display: block;
    width: 16px;
    height: 16px;
    background: url("../images/off.png") no-repeat;
}
#open .list_dt_icon{
    background: url("../images/open.png") no-repeat;
}
.list_dd{
    display: none;
}
.list_li{
    background: #4e4e4e;
    list-style-type: none;
    color: white;
    width: 120px;
    padding: 0 30px;
    height: 34px;
    line-height: 34px;
    cursor: pointer;
    border-bottom: 1px solid #6b6b6b;
}
.list_li:hover{
    background: #4285F4;
}

jQuery代码:

$(".list_dt").on("click",function () {
  $('.list_dd').stop();
  $(this).siblings("dt").removeAttr("id");
    if($(this).attr("id")=="open"){
       $(this).removeAttr("id").siblings("dd").slideUp();
    }else{
       $(this).attr("id","open").next().slideDown().siblings("dd").slideUp();
    }
});

这部分的jQuery代码主要是来完成菜单折叠效果的,实现起来很简单,不做过多解释,提醒大家记得引用jQuery库。

以上就是今天码云笔记为大家带来的垂直手风琴菜单的设计思路和源码,当然代码不是很难,大神请绕过,希望本篇文章对正在需要的朋友提供帮助,直接Ctrl+ C就可以拿去用了。当然内容有什么不足之处,还希望大家积极拍砖一起探讨。

1. 本站所有免费资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!
2. 本站不保证所提供下载的免费资源的准确性、安全性和完整性,免费资源仅供下载学习之用!如有链接无法下载、失效,请联系客服处理!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!
4. 如果您也有好的资源或技术教程,您可以投稿发布,成功分享后有站币奖励和额外收入!
5. 加入前端开发QQ群:565733884,我们大家一起来交流技术!
码云笔记 » jquery css垂直手风琴菜单列表制作

2 评论

  1. 代码很简单,效果却不错,可以学习一下

  2. 感谢分享!

发表评论