您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關jQuery實現手風琴效果的方法的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
jQuery中主要通過鼠標滑入或滑出時給animate設置寬度來實現手風琴效果
今天將和大家介紹如何使用jQuery來實現手風琴效果也就是當鼠標進入時會擴展,滑出時會變小的效果
實現手風琴效果所需要的知識點
(1)通過for循環來遍歷所有的圖片,利用jQuery中eq()方法選擇li標簽給他添加背景圖片
eq(index)方法:指示元素的位置(最小為 0),如果為負數,則從集合中的最后一個元素往回計數。
$(".box>ul>li").eq(i).css("backgroundImage","url(image/"+(i+1)+".jpg)");
(2)mouseenter():鼠標指針滑進元素時,會觸發事件即執行當發生 mouseenter 事件時被運行的函數
(3)mouseleave():當鼠標指針離開元素時,會觸發事件,規定當發生 mouseleave 事件時被運行的函數,該事件大多數時候會與 mouseenter 事件一起使用。
(4)stop(stopAll,goToEnd):停止當前正在運行的動畫。
stopAll :是否停止被選元素的所有加入隊列的動畫,
goToEnd :是否允許完成當前的動畫。
這兩個參數都是可選的但是goToEnd 參數只能在設置了 stopAll 參數時才可以使用,不能單獨使用
(5)siblings(selector): 獲得匹配集合中每個元素的并通過選擇器進行篩選是可選的。
selector 指字符串值,指用于匹配元素的選擇器表達式。
(6)animate() 方法:執行 CSS 屬性集的自定義動畫。該方法通過CSS樣式將元素從一個狀態改變為另一個狀態,注意只有數字值可創建動畫,字符串值無法創建動畫。
注意:在寫動畫時注意要加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(){ // 鼠標滑過時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實現手風琴效果的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。