1. 程式人生 > >用jquery實現圖片輪播

用jquery實現圖片輪播

CSS樣式:

*{
    margin: 0;
    padding: 0;
}
ul{
    list-style:none;
}
.slideShow{
    width: 620px;
    height: 700px;     /*其實就是圖片的高度*/
    border: 1px #eeeeee solid;
    margin: 100px auto;
    position: relative;
    overflow: hidden;    /*此處需要將溢位框架的圖片部分隱藏*/
}
.slideShow ul{
    width: 2500px;
    position: relative;     /*此處需注意relative : 物件不可層疊,但將依據left,right,top,bottom等屬性在正常文件流中偏移位置,如果沒有這個屬性,圖片將不可左右移動*/
}
.slideShow ul li{
    float: left;     /*讓四張圖片左浮動,形成並排的橫著佈局,方便點選按鈕時的左移動*/
    width: 620px;
}
.slideShow .showNav{     /*用絕對定位給數字按鈕進行佈局*/
    position: absolute;
    right: 10px;
    bottom: 5px;
    text-align:center;
    font-size: 12px;    
    line-height: 20px;
}
.slideShow .showNav span{
    cursor: pointer;
    display: block;
    float: left;
    width: 20px;
    height: 20px;
    background: #ff5a28;
    margin-left: 2px;
    color: #fff;
}
.slideShow .showNav .active{
    background: #b63e1a;
}

js程式碼規範:
<script src="../../../jQuery/js/jquery-2.1.4.js"></script> <script type="text/javascript">

$(document).ready(function(){    

var slideShow=$(".slideShow"),                                                                    //獲取最外層框架的名稱   

ul=slideShow.find("ul"),             

showNumber=slideShow.find(".showNav span"),                                              //獲取按鈕        

oneWidth=slideShow.find("ul li").eq(0).width();                                        //獲取每個圖片的寬度        

var timer=null;                                                                                     //定時器返回值,主要用於關閉定時器        

var iNow=0;                                                                                         //iNow為正在展示的圖片索引值,當用戶開啟網頁時首先顯示第一張圖,即索引值為0                

showNumber.on("click",function(){                                                      //為每個按鈕繫結一個點選事件                 

$(this).addClass("active").siblings().removeClass("active");                  //按鈕點選時為這個按鈕新增高亮狀態,並且將其他按鈕高亮狀態去掉            

var index=$(this).index();                                                                //獲取哪個按鈕被點選,也就是找到被點選按鈕的索引值            

iNow=index;            

ul.animate({    "left":-oneWidth*iNow,                               //注意此處用到left屬性,所以ul的樣式裡面需要設定position: relative; 讓ul左移N個圖片大小的寬度,N根據被點選的按鈕索引值iNOWx確定          

   })      

   });               

  function autoplay(){    

timer=setInterval(function(){                                              //開啟定時器           

  iNow++;                                                                         //讓圖片的索引值次序加1,這樣就可以實現順序輪播圖片           

  if(iNow>showNumber.length-1){                                      //當到達最後一張圖的時候,讓iNow賦值為第一張圖的索引值,輪播效果跳轉到第一張圖重新開始                

iNow=0; }            

showNumber.eq(iNow).trigger("click");                                  //模擬觸發數字按鈕的click        

},2000);                                                                      //2000為輪播的時間

}   

 autoplay();   

 slideShow.hover( function(){clearInterval(timer);},autoplay);     另外注意setInterval的用法比較關鍵。

})

</script>

主體程式碼:
<body>
        <div class="slideShow">
            <!--圖片佈局開始-->
            <ul>
                <li><a href="#"><img src="images/view/111.jpg"/></a></li>
                <li><a href="#"><img  src="images/view/112.jpg" /></a></li>
                <li><a href="#"><img src="images/view/113.jpg" /></a></li>
                <li><a href="#"><img  src="images/view/114.jpg" /></a></li>
            </ul>
            <!--圖片佈局結束-->
            
            <!--按鈕佈局開始-->
            <div class="showNav">
                <span class="active">1</span>
                <span>2</span>
                <span>3</span>
                <span>4</span>
            </div>
            <!--按鈕佈局結束-->
        </div>

</body>

總結:個人覺得圖片的寬度總和一定要要比整體的寬度要小,這樣才能保證圖片左移的時候有一定的空間保證圖片的完整性。

相關推薦

jquery實現圖片

CSS樣式: *{ margin: 0; padding: 0; } ul{ list-style:none; } .slideShow{ width: 620px; height: 700px; /*其實就是圖片的高度*/

使用JQuery實現圖片效果

left 簡述 flow href 集合 jpg -i round 輪播 【效果如圖】 【原理簡述】 這裏大概說一下整個流程: 1,將除了第一張以外的圖片全部隱藏, 2,獲取第一張圖片的alt信息顯示在信息欄,並添加點擊事件 3,為4個按鈕添加點擊偵聽,點擊相應的按鈕,用

jquery實現圖片圖效果

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style> *{ padding:0; margin:0; list-style:n

javascript實現圖片

有兩點需要注意:①css中的left屬性不能用xxx.style.left獲得,把該屬性寫在html中的style中就可以獲得。②自定義屬性獲取方法:   如 <span index="2"></span>可以用var currentIndex=par

JavaScript學習之陣列實現圖片

js程式碼: <script type="text/javascript"> //定義num為0 var num=0; //定義一個數組,其中元素為要實現輪播的圖片

使用Ajax+jQuery實現前端收到的數據在console上顯示+簡單的主頁設計與bootstrap插件實現圖片

value size 靠譜 實現圖 active length oot function 想要 1.實現前端輸入的數據在console上顯示 上一篇是解決了在前端的輸入信息在cygwin上顯示,這次要給前臺們能看見的數據,因為數據庫裏插入的數據少,所以寫的語句翻來覆去就那幾

原生JS實現 圖片切換 功能

效果如圖:程式碼如下:<!DOCTYPE HTML><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title

五滴水:使用Ajax+jQuery實現前端收到的資料在console上顯示+簡單的主頁設計與bootstrap外掛實現圖片

前言嘚吧嘚 三天沒更博了,嘻嘻嘻打自己:3 最近的狀態比開始的時候好太多,能看懂cygwin和console上報的錯誤了,知道到底是縮進出了問題還是我的程式碼邏輯不完整了,找資源也知道哪裡是我要的,也可以找到想要的了·······慢慢來,給自己立個flag :

iOS開發項目實戰——Swift實現圖片與瀏覽

0.10 上網 timer類 開發項目 cas hub string obj tle 近期開始開發一個新的iOS應用,自己決定使用Swift。進行了幾天之後,發現了一個非常嚴峻的問題。那就是無論是書籍,還是網絡資源,關於Swift的實在是太少了,隨便一

jq實現簡單

cti 標簽 function radi har mil ott ava 懸停 一個簡單的實例: css代碼: <style type="text/css">@charset "utf-8";*{ padding:0px; border:

CSS/HTML/JS實現圖片

class fff 瀏覽器 tro back 全局 實現圖 func 原理 實現原理 將點擊的a標簽的href屬性值賦給img標簽的src屬性,這樣有個好處,就是如果瀏覽器不支持js的話,點擊a標簽也可跳轉到圖片地址看到圖片,不會影響內容的呈現 註:需要導入jquery

原生JS實現圖片

讓其 gin 偏移量 adding char 效率 lin doc 動畫效果 <!doctype html> <html lang="en"> <head> <meta charset="UTF-8">

Flexslider插件實現圖片、文字圖片相結合滑動切換效果

remove 12px body 類型 ons art cal 選項 csharp 插件下載:   點擊下載 密碼: fbeg Flexslider具有以下特性: 支持滑動和淡入淡出效果。 支持水平、垂直方向滑動。 支持鍵盤方向鍵控制。 支持觸控滑動。 支

JQuery實現旋轉

ann ima query 500px RR nbsp AS HR ++ css部分 <style> *{ margin: 0; padding: 0; } .co

[JavaScript]使用jQuery實現無縫

方式 child margin blog turn use leave 分享 不同的 代碼鏈接:我的GitHub 項目預覽:預覽 目的:通過CSS + jQuery的方式實現自動無縫輪播。 上一篇博文總結了使用jQuery實現輪播,雖然是自動輪播,但是這個輪播有個不足之處:

JQuery實現

<div class="carousel-figure clearfix"> <div class="carsoul-box clearfix"> <a class="ig" href="#"><img src="image/

(30)進階: jQuery 做個

內容樣式行為分離 輪播初實現  谷歌    蘋果風格的輪播    dog small  CSS屬性     display: flex;   align-items:flex-start;

C# winform窗體實現圖片

1、定義一個方法設定控制元件 和執行緒時間 /// <summary> /// 改變圖片 /// </summary> /// <param name="img">圖片</param>

微信小程式實現圖片

wxml頁面程式碼: <!--圖片輪播 --> <view class='swipercontainer'> <swiper indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}" inte

[程式碼] 使用css3實現圖片

使用css3實現圖片輪播 前言:實現圖片輪播的方式有很多種 ,例如js ,css 等等。 本文主要講述使用純css3實現輪播圖 工具介紹: 使用的編輯器: Hbuilder 進入正題 htm