輕松實(shí)現(xiàn)jquery手風(fēng)琴效果
為大家講解的JQuery動畫特效為手風(fēng)琴,廢話不多說,先看最終實(shí)現(xiàn)效果圖。

一、實(shí)現(xiàn)原理分析

對應(yīng)的立體圖:

二、 HTML代碼分析
<body>
<div id="container">
<ul id="content">
<li class="first">
<h3>真</h3>
<div><img src="images/0.jpg"/></div>
</li>
<li class="second">
<h3>的</h3>
<div><img src="images/1.jpg"/></div>
</li>
<li class="third">
<h3>愛</h3>
<div><img src="images/2.jpg"/></div>
</li>
<li class="forth">
<h3>你</h3>
<div><img src="images/4.jpg"/></div>
</li>
</ul>
</div>
</body>
1. id為container的div就是上面分析中的紅色區(qū)域。
2. id為content的ul就是用來存放所有的li。
3. 每個(gè)li就是一個(gè)紅色區(qū)域與對應(yīng)圖片的組合。
三、CSS代碼分析
*{margin: 0; padding: 0;}
img{
border:0;
}
#container
{
width:680px;
height: 300px;
margin: 100px auto;
position: relative;
border:3px solid red;
overflow: hidden;
}
#container #content
{
list-style: none;
}
#container #content li{
width:590px;
height:300px;
position: absolute;
}
#container #content li.second{
left:590px;
}
#container #content li.third{
left:620px;
}
#container #content li.forth{
left:650px;
}
#container #content li h3{
float:left;
width: 24px;
height:294px;
border:3px solid blue;
background-color: yellow;
cursor: pointer;
}
#container #content li div{
float: left;
width: 560px;
height:300px;
}
1. *和img標(biāo)簽用來去除系統(tǒng)默認(rèn)的間隙等效果。
2. #container就是在上面分析的可視區(qū)域,所以它的尺寸是 680 * 300,并且它是所有子元素的容器,所以它是相對定位(position: relative)。
3. #container #content就是去除掉ul默認(rèn)的小圓點(diǎn)效果。
4. 所有的li采用絕對定位,并且它們的大小均為 590 * 300, 然后設(shè)置后面li的left值,并且設(shè)置li的h3(黃色區(qū)域)屬性漂浮。
當(dāng)上面所有的css樣式設(shè)置完畢以后,最終呈現(xiàn)的效果就是分析圖中的效果。
四、JQuery代碼分析
手風(fēng)琴的js交互代碼其實(shí)非常簡單,就是實(shí)時(shí)的改變對應(yīng)li的絕對位置的left值就可以了,代碼如下:
$(function(){
$("#container #content li.first h3").mouseenter(function(){
$("#container #content li.second").stop().animate({"left":590}, 1000);
$("#container #content li.third").stop().animate({"left":620}, 1000);
$("#container #content li.forth").stop().animate({"left":650}, 1000);
});
$("#container #content li.second h3").mouseenter(function(){
$("#container #content li.second").stop().animate({"left":30}, 1000);
$("#container #content li.third").stop().animate({"left":620}, 1000);
$("#container #content li.forth").stop().animate({"left":650}, 1000);
});
$("#container #content li.third h3").mouseenter(function(){
$("#container #content li.second").stop().animate({"left":30}, 1000);
$("#container #content li.third").stop().animate({"left":60}, 1000);
$("#container #content li.forth").stop().animate({"left":650}, 1000);
});
$("#container #content li.forth h3").mouseenter(function(){
$("#container #content li.second").stop().animate({"left":30}, 1000);
$("#container #content li.third").stop().animate({"left":60}, 1000);
$("#container #content li.forth").stop().animate({"left":90}, 1000);
});
});
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助。
相關(guān)文章
原生js實(shí)現(xiàn)一個(gè)放大鏡效果超詳細(xì)
這篇文章主要介紹了原生js實(shí)現(xiàn)一個(gè)放大鏡效果超詳細(xì),文章圍繞主題展開詳細(xì)的內(nèi)容,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-09-09
基于Bootstrap仿淘寶分頁控件實(shí)現(xiàn)代碼
這篇文章主要介紹了基于Bootstrap仿淘寶分頁控件實(shí)現(xiàn)代碼,本文分步驟給大家介紹的非常詳細(xì),感興趣的朋友參考下吧2016-11-11
使用原生JS實(shí)現(xiàn)一個(gè)日期選擇器(DatePicker)組件
這篇文章主要為大家介紹了如何通過原生HTML/CSS/JavaScript完成一個(gè)日期選擇器(datepicker)組件,一個(gè)純手搓的組件的開發(fā),有需要的可以了解下2025-01-01
一個(gè)鼠標(biāo)移動滑出層效果的實(shí)現(xiàn)代碼
一個(gè)鼠標(biāo)移動滑出層的代碼,根據(jù)網(wǎng)上的視頻教程學(xué)習(xí)的,這也算是第一次練手吧,鼠標(biāo)靠近復(fù)選框的時(shí)候,就會顯示出一個(gè)層,移開則消失。2011-08-08
如何通過js實(shí)現(xiàn)圖片預(yù)覽功能【附實(shí)例代碼】
如何通過js實(shí)現(xiàn)圖片預(yù)覽功能呢?下面小編就為大家?guī)硪黄胘s實(shí)現(xiàn)圖片預(yù)覽功能。給大家做個(gè)參考吧,一起跟隨小編過來看看2016-03-03

