移動(dòng)端入門之輪播圖

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>移動(dòng)端輪播圖</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<style>
*{ margin:0; padding:0; list-style:none;}
html{ font-size:20px;}
#box{width:16rem;height:7.5rem; margin:0 auto; overflow:hidden;}

    #box ul{width:64rem; overflow:hidden;}
    #box ul li{width:16rem; height:7.5rem; float:left; text-align:center; line-height:7.5rem; font-size:2rem; color:#fff;}
</style>
<script>
    //rem自適應(yīng)轉(zhuǎn)換
    (function(win,doc){
        function change(){
            doc.documentElement.style.fontSize=20*doc.documentElement.clientWidth/320+'px';
        }
        change();

        win.addEventListener('resize',change,false);
    })(window,document)
    document.addEventListener('DOMContentLoaded',function () {
        var oUl=document.querySelector('#box ul');
        var aLi=oUl.children;
        var x=0;
        var n=0;
        oUl.addEventListener('touchstart',function (ev) {
            oUl.style.webkitTransform='none';
            var downX=ev.targetTouches[0].pageX;
            var disX=downX-x;
            function fnMove(ev) {
                x=ev.targetTouches[0].pageX-disX;
                oUl.style.webkitTransform='translate3d('+x+'px,0,0)'
            }
            function fnEnd(ev) {
                var upX=ev.changedTouches[0].pageX;
                oUl.style.transition='0.4s all ease';
                if(Math.abs(upX-downX)>50){
                    if(downX>upX){
                        n++;
                        if(n==aLi.length)n=aLi.length-1;
                        x=-n*aLi[0].offsetWidth;
                        oUl.style.webkitTransform='translate3d('+x+'px,0,0)'
                    }else{
                        n--;
                        if(n==-1)n=0;
                        x=-n*aLi[0].offsetWidth;
                        oUl.style.webkitTransform='translate3d('+x+'px,0,0)'
                    }

                }
                oUl.removeEventListener('touchend',fnEnd,false)
                oUl.removeEventListener('touchmove',fnMove,false)
            }
            oUl.addEventListener('touchend',fnEnd,false)
            oUl.addEventListener('touchmove',fnMove,false)
            ev.preventDefault();
        },false)

    },false)
</script>

</head>
<body>
<div id="box">
<ul>
<li style=" background:red;">0</li>
<li style=" background:blue;">1</li>
<li style=" background:green;">2</li>
<li style=" background:#499;">3</li>
</ul>
</div>
</body>
</html>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 一、DOM 什么是DOM?Document Object Model(文檔對象模型)。DOM是針對HTML和XML...
    空谷悠閱讀 986評論 0 2
  • 一、下面我將簡單的介紹移動(dòng)端布 局的八種方式: 1.固定布局 2.流動(dòng)布局 3.浮動(dòng)布局 4.定位布局 5.混合布...
    李好Ario閱讀 1,579評論 0 8
  • 1. tab列表折疊效果 html: 能源系統(tǒng)事業(yè)部 崗位名稱: 工作地點(diǎn) 崗位名...
    lilyping閱讀 1,899評論 0 1
  • 一、下面我將簡單的介紹移動(dòng)端布局的八種方式:** 1.固定布局**2.流動(dòng)布局3.浮動(dòng)布局4.定位布局5.混...
    張憲宇閱讀 1,564評論 0 2
  • 冬天了,天氣太冷直接吃水果對于小寶寶來說太涼了,那么蘋果我會(huì)把它蒸熟后給寶寶吃,先喝蘋果水后吃蘋果泥,橙汁我擠出來...
    六月洋閱讀 194評論 0 0