DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> jQuery入門知識 >> JQuery入門技巧 >> jQuery圖片切換動畫特效
jQuery圖片切換動畫特效
編輯:JQuery入門技巧     

由於博主我懶,所以頁面畫的比較粗糙,但是沒關系,因為我主要講的是如何實現圖片動畫切換。

思路:想必大家都逛過淘寶或者其他的一些網站,一般都會有圖片動畫切換的效果,那是怎樣實現的呢?博主我呢,技術不是很好,弄了一個簡單的例子!

首先一般圖片上會有兩個圖片按鈕,一個左切換的按鈕一個右切換的按鈕,當我們單擊左切換按鈕時,原來的圖片就會向右移動XX像素,然後它左邊的圖片就會顯示到框裡,而原來的圖片被隱藏了,單擊右切換按鈕的原理跟左按鈕相似。但如果一直點同一個按鈕的話,本來這個圖片切換框只有3張圖片的話,到最後一張的時候我們要做一個判斷,讓它移動回第一張或者最後一張。思路分析完了,下面看下我們的代碼:

1、html代碼

<div id="divBox">
  <div id="imgBox">
    <div class="img"><img src="0.jpg"/></div>
    <div class="img"><img src="1.jpg"/></div>
    <div class="img"><img src="3.jpg"/></div>
  </div>
</div>
<div id="bth">
  <button id="zou">左</button>
  <button id="you">右</button>
</div>

divBox是一個顯示圖片的框

imgBox是包住所有圖片的DIV,我們實現效果也是移動這個DIV就可以了

bth放了兩個button按鈕用來切換圖片

效果圖:

 

2、CSS代碼

  #divBox{
  height:315px;
  width:750px;
  position:absolute;
  border:#000000 1px solid;
  overflow:hidden;}

  #imgBox{
  position:absolute;
  width:2550px;}
  
  .img{
  float:left;}
  
  #bth{
  margin-left:800px;}

#divBox設置圖片顯示框的寬高,絕對位置,邊框,還一個重要的屬性是overflow,溢出隱藏,當這個DIV裡的內容超出這個DIV的大小時,溢出的部分會被隱藏掉。

#imgBox設置絕對位置和寬度,這個寬度取決於你所有圖片寬度的總和,我這裡是2550px,有三張圖片,每張圖片寬為750px;如果這裡不給寬度的話裡面的小DIV無法左浮動。

.img設置左浮動,讓所有圖片向左浮動,保持在一條水平線上。

#bth 設置外邊距,因為上面的div設置了絕對位置所以這個div會被蓋住看不見了,所以把這個div挪出來。

 效果圖:

3、腳本代碼

  $(function(){
    //定義一個變量保存距離左邊的位置
    var leftNum=0;
    $("#zou").click(function(){
      if(leftNum==0){
        //移動到最後一張圖片
        $("#imgBox").animate({left:leftNum=-1500},500);
      }else{
        $("#imgBox").animate({left:leftNum=leftNum+750},500);
      }
      
    });
    
    $("#you").click(function(){
      if(leftNum==-1500){
        //移動到第一張圖片
        $("#imgBox").animate({left:leftNum=0},500);
      }else{
        $("#imgBox").animate({left:leftNum=leftNum-750},500);
      }
      
    });
  });


提示:記得導入jQuery包

腳本代碼我寫了兩個單擊事件,定義了一個保存距離左邊位置的屬性leftNum

首先看一下我們的左切換按鈕單擊事件:當我們單擊按鈕時,首先判斷leftNum是否為0,如果為0,那麼就是第一張圖片,第一張圖片左邊已經沒圖片了怎麼辦,所以我們讓他跳到最後一張圖片,我們調用animate方法實現動畫效果,這裡我寫的是left:left=-1500,為什麼是-1500呢,left等於0時是第一張圖片,left等於-750的時候是第二張圖片,left等於-1500時就是第三張圖片,所以最後一張圖片的位置=-(圖片寬度)X(圖片總數)-1。如果leftNum不為0時,我們就在原來的基礎上加750px。

右切換按鈕的原理和左切換按鈕相似,我就不解釋那麼多了。

 4、小結:

看懂的小伙伴們可以自己去實踐一下,畢竟實踐出真理。

如果想做的更好看的同學,可以私信我,畢竟還有先功能我沒講,比如弄幾個圓點在圖片上面,當我們點擊圓點時就動畫切換到相對應的圖片上,還可以設置圖片輪播效果,每隔多少秒切換一次圖片。

還有就是按鈕的話,大家也可以弄的漂亮一些,可以在圖片左邊和右邊加一個圖片的按鈕,這樣和更美觀

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved