JS+JQ手风琴效果
最新在学习JS写一些实用的小玩意——手风琴
CSS样式:
<style type="text/css">
* {
margin: 0px;
border: 0px;
padding: 0px;
} .leftli {
float: left;
width: 200px;
background: #3D4444;
} ul li {
display: block;
line-height: 25px;
width: 200px;
height: 25px;
list-style-type: none;
border-collapse: collapse;
font-size: 15px;
color: #DBDBDB;
margin-left: 20px;
} ul li:hover {
background: #FFFFFF;
color: #000000;
cursor: pointer;
height: 40px;
line-height: 40px;
font-size: 22px;
} a {
display: block;
line-height: 50px;
width: 200px;
height: 50px;
list-style-type: none;
font-size: 30px;
left: 5px;
color: #F9F9F9;
font-size: bold;
} a:hover {
background: #FFFFFF;
color: #2FA8EC;
cursor: pointer;
height: 65px;
line-height: 65px;
font-size: 40px;
text-align: center;
}
</style>
HTML布局:
<body>
<div class="leftli">
<div>
<a>First</a>
<ul>
<li>First One</li>
<li>First Two</li>
</ul>
<a>Second</a>
<ul>
<li>Second One</li>
<li>Second Two</li>
</ul>
<a>Third</a>
<ul>
<li>Third One</li>
<li>Third Two</li>
</ul>
<a>Fourth</a>
<ul>
<li>Fourth One</li>
<li>Fourth Two</li>
</ul>
<a>Fifth</a>
<ul>
<li>Fifth One</li>
<li>Fifth Two</li>
</ul>
<a>Sixth</a>
<ul>
<li>Sixth One</li>
<li>Sixth Two</li>
</ul>
</div>
</div>
</body>
引用的JS
<script type="text/javascript" src="js/jquery-1.11.0.min.js"></script>
JS关键代码
<script type="text/javascript">
$(function() {
//设置DIV的高度跟随屏幕变化而变化,类似于自适应
$(".leftli").height(document.body.scrollHeight);
//隐藏除第一个元素以外的所有元素
$(".leftli ul:gt(0)").hide();
})
//bind()为.leftli a的a生成点击事件
$(".leftli a").bind("click", function() {
//.netx("li")获取同级的下一个li元素
//slideToggle(300)展开/关闭当前被点击的ul元素,300为速度,除了可以是数字还可以"slow"、"normal"、"fast"
//siblings("ul")遍历所有的ul元素
//slideUp(300)隐藏已经被展开的其他ul元素,300为速度,除了可以是数字还可以"slow"、"normal"、"fast"
$(this).next("ul").slideToggle(300).siblings("ul").slideUp(300);
})
</script>
JS大致思路就是先获取当前被点击的a元素,然后展开a元素下的ul元素,再遍历所有的ul元素,再将已展开的ul元素隐藏,这样就完成了手风琴效果。
手风琴效果如果有不完善的地方,希望各位JS/JQ大神多多指教,大家共同学习,送上Demo下载。
文章可随意转载,转载请注明出处(http://www.cnblogs.com/yy981420974/p/5891918.html)。
JS+JQ手风琴效果的更多相关文章
- 使用JS实现手风琴效果
想要实现简单的手风琴切换效果,需要使用JS实现,如下是使用javascript源码实现,后续会更新使用jQuery实现. 1. 先进行简单的布局:我们可以再ul下添加几个li实现html的简单布局,再 ...
- js实现手风琴效果
之前在慕课网上有练习手风琴效果,但是老师使用jquery简简单单的两三行实现了,今天自己用js练习一下效果 <div id="divbox"> <ul> & ...
- JS/JQ动画效果
1.弹出框 <style> .mask { position: fixed; display: none; width: 100%; height: 100%; top: 0; left: ...
- js 特效 手风琴效果
$(document).ready(function(){ //定义展开的块 var lastBlock = $('#a1'); //展开的块的宽度 var maxWidth = 406; //折叠的 ...
- jq手风琴效果
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- animatescroll.min.js ~~~~ jq滚动效果 优化target自定义方法
$(".meun>div[name='meun_nav']>a").eq(1).on("click",function(){ $("bod ...
- js&jq 发送验证码倒计时
<input type="text" name='' id="btn"> //发送验证码倒计时var wait=30; function t ...
- jquery 图片手风琴效果
这篇主要是手风琴效果和无缝切换相结合,在Demo里的Demo3.html.Demo4.html. 手风琴原理比较简单,当鼠标经过的时候改变图片的路径,鼠标移到另一张图片时还原路径. 虽然原理简单,但是 ...
- 一步步教你css3手风琴效果的实现
什么是手风琴效果? 首先我们先来看一段动画,如下图所示: 在上面动画中,我们不难发现,一排照片正常排列,当我鼠标移上(:hover)时,照片会变大显示并且把其它照片挤小.那么在鼠标来回移动的过程中,画 ...
随机推荐
- lua中常量的实现及表的深拷贝实现
废话:好久没在这里写博客了...主要原因是我买了个域名hanxi.info并在github上搭建了个人博客... lua中默认是没有c中的const常量的,在csdn上找到了一个使用setmetata ...
- Django模块学习- django-pagination
实在是很简单的一个Django 的分页插件. 使用pip instal pagination 即可完成安装. 完成后配置如下: 1. 将安装文件中的 pagination 文件夹拷贝到项目的根目录下 ...
- nginx 相关问题
Nginx配置文件nginx.conf 参考:http://www.2cto.com/os/201212/176520.html Nginx自动切分日志: nignx没有自动分开文件存储日志的机制. ...
- Maximum Entropy Markov Models for Information Extraction and Segmentation
1.The use of state-observation transition functions rather than the separate transition and observat ...
- textView字体颜色根据不同状态显示不同颜色
XML file saved at res/color/button_text.xml: <?xml version="1.0" encoding="utf-8&q ...
- 新浪微博OAuth2.0的用法
最近学习Android开发,照着视频开发新浪微博,但是视频里的介绍的是OAuth1.0的授权方式,试了半天发现用不了. 原来现在一般没审核的用户只能使用OAuth2.0了,视频教学里的方法已经过时了. ...
- 从头学Qt Quick(2)-- QML语法从一个简单的例子说起
在上一篇文章中,我们对QtQuick做了简单的介绍,体验了使用QML语言构建一个UI的便捷.这里我们简要介绍一下QML的语法. QML将界面分成一些更小的元素,这些元素可以组成一个组件,QML语言描述 ...
- redmin3 忘记管理密码找回方法
在网上找了一下都是redmine2的,而且比较复杂. 后来我看了一下redmin的数据库,如下: 注册一个新用户把admin的值改为1即可,就是管理员了. 如果忘记数据库密码,可以参考此文档修改数据库 ...
- Android manifest之manifest标签详细介绍
AndroidManifest详细介绍 本文主要对AndroidManifest.xml文件中各个标签进行说明.索引如下: 概要PART--01 manifest标签PART--02 安全机制和per ...
- 【转载】解决 Subversion 的 “svn: Can't convert string from 'UTF-8' to native encoding” 错误
转载自:http://blog.csdn.net/shaohui/article/details/3996274 在google code 上创建了一个新的项目, 用Windows 下面的tortoi ...