溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

jQuery實現(xiàn)手風(fēng)琴效果的方法

發(fā)布時間:2020-08-29 11:40:23 來源:億速云 閱讀:267 作者:小新 欄目:web開發(fā)

這篇文章給大家分享的是有關(guān)jQuery實現(xiàn)手風(fēng)琴效果的方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

 jQuery中主要通過鼠標(biāo)滑入或滑出時給animate設(shè)置寬度來實現(xiàn)手風(fēng)琴效果

今天將和大家介紹如何使用jQuery來實現(xiàn)手風(fēng)琴效果也就是當(dāng)鼠標(biāo)進入時會擴展,滑出時會變小的效果

jQuery實現(xiàn)手風(fēng)琴效果的方法

實現(xiàn)手風(fēng)琴效果所需要的知識點

(1)通過for循環(huán)來遍歷所有的圖片,利用jQuery中eq()方法選擇li標(biāo)簽給他添加背景圖片

eq(index)方法:指示元素的位置(最小為 0),如果為負數(shù),則從集合中的最后一個元素往回計數(shù)。

$(".box>ul>li").eq(i).css("backgroundImage","url(image/"+(i+1)+".jpg)");

(2)mouseenter():鼠標(biāo)指針滑進元素時,會觸發(fā)事件即執(zhí)行當(dāng)發(fā)生 mouseenter 事件時被運行的函數(shù)

(3)mouseleave():當(dāng)鼠標(biāo)指針離開元素時,會觸發(fā)事件,規(guī)定當(dāng)發(fā)生 mouseleave 事件時被運行的函數(shù),該事件大多數(shù)時候會與 mouseenter 事件一起使用。

(4)stop(stopAll,goToEnd):停止當(dāng)前正在運行的動畫。

stopAll :是否停止被選元素的所有加入隊列的動畫,

goToEnd :是否允許完成當(dāng)前的動畫。

這兩個參數(shù)都是可選的但是goToEnd 參數(shù)只能在設(shè)置了 stopAll 參數(shù)時才可以使用,不能單獨使用

(5)siblings(selector): 獲得匹配集合中每個元素的并通過選擇器進行篩選是可選的。

selector 指字符串值,指用于匹配元素的選擇器表達式。

(6)animate() 方法:執(zhí)行 CSS 屬性集的自定義動畫。該方法通過CSS樣式將元素從一個狀態(tài)改變?yōu)榱硪粋€狀態(tài),注意只有數(shù)字值可創(chuàng)建動畫,字符串值無法創(chuàng)建動畫。

注意:在寫動畫時注意要加stop()停止原先的動畫目的是為了防止動畫重疊影響效果。

完整代碼展示

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
*{
padding: 0;
margin: 0;
list-style: none;
}
ul{
width:1300px;
}
.box{
width:1200px;
height: 200px;
border: 1px solid #ccc;
margin: 100px auto;
}
.box li{
width:240px;
height: 200px;
float:left;//讓所有的li元素左對齊
}
</style>
</head>
<body>
<div>
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
<script src="jquery/jquery-1.12.4.js"></script>
<script>
$(function(){
for(var i=0;i<$(".box>ul>li").length;i++){
$(".box>ul>li").eq(i).css("backgroundImage","url(image/"+(i+1)+".jpg)");
  }
 $(".box>ul>li").mouseenter(function(){
//  鼠標(biāo)滑過時li的寬度為800,離開時為240
$(this).stop().animate({width:800}).siblings().stop().animate({width:100}).mouseleave
(function(){
   $(".box>ul>li").stop().animate({width:240})
 })
 })
 })
</script>
</body>
</html>

效果圖

jQuery實現(xiàn)手風(fēng)琴效果的方法

動畫演示

jQuery實現(xiàn)手風(fēng)琴效果的方法

感謝各位的閱讀!關(guān)于jQuery實現(xiàn)手風(fēng)琴效果的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI