码迷,mamicode.com
首页 > Web开发 > 详细

【JQuery】jQuery自制简易手风琴效果(附实现原理)

时间:2015-08-30 11:28:34      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:手风琴

手风琴效果经常会用在网页左侧的导航栏,当导航内容比较多时使用手风琴的展示方式更有利于信息的传递和排版,下面就分享一个自己制作的简易手风琴效果,没有用图片,背景颜色也是随意设定的,在实际项目中大家可适当修改。

效果图:

技术分享


实现原理:

1、当鼠标点击span标签(即一级导航)时,先判断子目录li是否已经展开(此处使用一个on类来做标记);
2、如果是,则收缩当前的li,移出on类标记,修改span右边的提示符为加号;
3、如果不是,则展开当前的li,增加on类标记,修改span右边的提示符为减号。


源码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>自制手风琴</title>
<script type="text/javascript" src="jquery-1.11.1.min.js"></script>
<style type="text/css">
	body,ul,li{margin: 0 auto;padding: 0;}
	ul,li{list-style-type: none;cursor: pointer;color: white;line-height: 28px;text-align: center;}
	ul{width: 150px;}
	ul span{background-color: green;display: block;font-weight: bold;border-bottom: 1px solid #ccc;}
	ul:last-child span{border-bottom: none;}
	li{background-color: black;display: none;}
	li:hover{background-color: orange;}
	b{display: inline;float: right;padding-right: 10px;}
</style>
</head>
<body>
    <ul>
    	<span>AAAAA<b>+</b></span>
    	<li>11111</li>
    	<li>11111</li>
    	<li>11111</li>
    	<li>11111</li>
    </ul>
    <ul>
    	<span>BBBBB<b>+</b></span>
    	<li>22222</li>
    	<li>22222</li>
    	<li>22222</li>
    </ul>
    <ul>
    	<span>CCCCC<b>+</b></span>
    	<li>33333</li>
    	<li>33333</li>
    	<li>33333</li>
    	<li>33333</li>
    	<li>33333</li>
    </ul>
    <ul>
    	<span>DDDDD<b>+</b></span>
    	<li>44444</li>
    	<li>44444</li>
    </ul>
    <ul>
    	<span>EEEEE<b>+</b></span>
    	<li>55555</li>
    	<li>55555</li>
    	<li>55555</li>
    </ul>
    <script type="text/javascript">
    	$(function(){
    		$('span').click(function(){
    			if($(this).siblings('li').hasClass('on')){
    				$(this).siblings('li').slideUp(500).removeClass('on');
    				$(this).children('b').text('+');
    			}else{
    				$(this).siblings('li').slideDown(500).addClass('on');
    				$(this).children('b').text('-');
    			}
    		});
    	});
    </script>
</body>
</html>

好啦,这样一个简单的手风琴就做好啦~


Author:致知

Sign:路漫漫其修远兮,吾将上下而求索。

版权声明:本文为博主原创文章,未经博主允许不得转载。

【JQuery】jQuery自制简易手风琴效果(附实现原理)

标签:手风琴

原文地址:http://blog.csdn.net/lzgs_4/article/details/48101877

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!