圖片輪播效果,基本上,一個網站,其它效果都可以沒有,但是基本上都存在圖片輪播的效果。
這裏就說說製作的思路。方法有很多種。因人而異。
結構分析
1 要輪播的圖片 bigM[]
2 底部小圓圈按鈕smallM[] 當你點擊任意小圓圈,切換到對應的圖! 第0個小圓圈對應第0張的圖。。。第1個小圓圈對應第1張的圖。。。。 記住!數字是對應的
開始:
假設 我們要輪播的圖有6張: 0 1 2 3 4 5
第一步:設置這6張圖片在同一個位置,同一區域。 用 position: absolute;
第二步:設absolute之後,所有的圖片就重疊在一起了。 此時決定哪張顯示出來。用 z-index
這裏默認 0 這張圖片的 z-index 爲1吧,顯示這張。其餘的圖片默認爲0
切換思想:
通過控制 z-index的來決定讓哪張圖片顯示。如果你想讓 3 這圖片顯示, 就把 3 的 z-index提到最高!
-----------------------------------------------------------
通過點擊 前一張按鈕 後一張按鈕 和小圓圈 切換圖片
點擊小圓圈:前面提到了,點擊任意的小圓圈,切換對應的圖片。 數字對應數字!
點擊前一張按鈕:0變成0 即 0->5 1->0 2->1 3->2 4->3 5->4
點擊後一張按鈕: 即 0->1 1->2 2->3 3->4 4->5 5->0
----------------------------------------------------------
我們先設兩個全局變量:
var now=0; 爲什麼是0 因爲前面我默認第0張圖片顯示! 通過now的變換,來切換對應的圖片
var ZIndex=1; 爲什麼是1 因爲前面我默認第0張圖片的層級爲1!通過ZIndex來決定圖片的層級
bigM[now].style[z-index]=ZIndex
實現點擊後一張按鈕:
後一張按鈕 .οnclick=function(){
now++; //0->1;
ZIndex++; //ZIndex=2
bigM[now].style[z-index]=ZIndex
然後讓第now張圖片的 層級爲ZIndex,這樣子1 這張圖片的層級就變爲了2 顯示出來了!
然後點擊。。點擊。。一直到now=5 此時5這張圖片的層級爲6;
然後再次點擊下一張的圖片,now就變在6了,我們也沒6這圖片,所以這時候now的應該等於0!這樣就回到第0張圖片了;
ZIndex仍然++ 此時第0圖片的層級就變成是高的了,就顯示出來了
}
實現點擊前一張按鈕:
同理,點兩前一張按鈕: now--; ZIndex仍然++
bigM[now].style[z-index]=ZIndex
點擊小圓圈按鈕:
點擊任意一個小圓圈,記錄下當前所在的索引值。
將now=當前的索引值,ZIndex仍然++
bigM[now].style[z-index]=ZIndex
這樣就將第now張圖片顯示出來
----------------------------------------------------------------------
OK!其餘細節部分
當bigM[now] 層級提上來的時候,你想以透明度漸變的方式 還是滑動出來的形式 還是其它什麼的動畫形式 任自己發揮了
小圓圈按鈕部 一般顯示出來的圖片對應的小圓圈顏色和其它的小圓圈顏色不一樣!方法:
1 將所有的小圓圈恢復成默認顏色
2 smallM[now].style[color]=顏色
完畢!