簡單說說輪播圖的做法

今天給大家講的是輪播圖的做法,輪播圖的思路就是最外邊div的邊框把超出的部分隱藏,中間的div給出所有圖片加起來的寬度,如果是浮動的話,直接圖片的寬度*張數(shù)+1,不是的話,要預(yù)留他們的距離,小的div向左邊移動。
閑話不多上,上代碼。

css部分:
/#wrap{width: 200px;overflow: hidden;}
.middle{width: 1100px;}
img{width: 200px;height: 300px;}

html部分:
<body>
<div id="wrap">
<div class="middle">
<img />
<img />
<img />
<img />
<img />
</div>
</div>
</body>
第五張圖片是用來做無縫輪播使用的,當(dāng)圖片運行到第五張圖片的時候,把他的位置強制變成第一張

JS部分:
<script src="tween/tween.js" charset="utf-8"></script>
<script type="text/javascript">
//1 獲取元素
var div = document.getElementsByClassName('middle')[0];

//2 定義所需變量
var num = 0;

//3 加定時器(隨時間滾動)
var timer = setInterval(fun,2000);
function fun(){
    num++;
    //定義四個變量作為tween動畫的函數(shù)參數(shù)
    var startT = 0;
    var endT = 30;
    var startP = parseInt(div.style.marginLeft) || 0;
    var endP = num*(-200)-startP;

    //添加定時器做tween動畫(針對每一張圖片)
    var smallTimer = setInterval(function(){
        //每次動畫結(jié)束清除定時器
        if (startT >= endT) {
            clearInterval(smallTimer);
            //在動畫結(jié)束的一瞬間,判斷是否是最后一張圖片,如果是,跳到第一張
            if(num == 4){
                num = 0;
                div.style.marginLeft = '0px';
            }
        }else{
            div.style.marginLeft=Tween.Bounce.easeIn(startT,startP,endP,endT)+'px';
        }   
        startT++;
    },30);
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 選擇qi:是表達(dá)式 標(biāo)簽選擇器 類選擇器 屬性選擇器 繼承屬性: color,font,text-align,li...
    wzhiq896閱讀 2,100評論 0 2
  • 選擇qi:是表達(dá)式 標(biāo)簽選擇器 類選擇器 屬性選擇器 繼承屬性: color,font,text-align,li...
    love2013閱讀 2,421評論 0 11
  • 第一部分HTML&CSS整理答案1.什么是HTML5? 答:HTML5是最新的HTML標(biāo)準(zhǔn)。 注意:講述HTML5...
    Programmer客棧閱讀 2,099評論 0 12
  • ? JavaScript 3 1. HTML對象獲取問題 32. const問題 33. event.x與even...
    橫沖直撞666閱讀 3,263評論 0 7
  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補...
    _Yfling閱讀 14,090評論 1 92

友情鏈接更多精彩內(nèi)容