美文网首页
原声js模拟微信滑动

原声js模拟微信滑动

作者: protein_Ly | 来源:发表于2017-08-31 15:16 被阅读0次
    <!DOCTYPE html>  
    <html>  
    <head>  
        <meta charset="UTF-8">  
        <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />  
        <title>微信滑动删除</title>  
        <!--<link rel="stylesheet" type="text/css" href="base.css"/>-->  
        <style>  
            *{  
                padding: 0;  
                margin: 0;  
            }  
            html {  
                font-size: 20px;  
            }  
            body {  
                font-size: 16px;  
            }  
            @media only screen and (max-width: 320px) {    html {   
                    font-size: 42.7px !important;   
                }}   
            @media only screen and (min-width: 321px) and (max-width: 360px) {    html {   
                    font-size: 48px !important;   
                }}   
            @media only screen and (min-width: 361px) and (max-width: 375px) {    html {   
                    font-size: 50px !important;   
                }}   
            @media only screen and (min-width: 376px) and (max-width: 384px) {    html {   
                    font-size: 52.1px !important;   
                }}   
               
            @media only screen and (min-width: 385px) and (max-width: 414px) {    html {   
                    font-size: 55.2px !important;   
                }}   
               
            @media only screen and (min-width: 415px) and (max-width: 480px) {    html {   
                    font-size: 64px !important;   
                }}   
               
            @media only screen and (min-width: 481px) and (max-width: 540px) {    html {   
                    font-size: 72px !important;   
                }}  
            @media only screen and (min-width: 750px) {    html {   
                    font-size: 100px !important;   
                }}  
            .line{  
                width: 7.5rem;  
                height: 1.35rem;  
            }  
            .line_move{  
                width: 7.5rem;  
                height: 100%;  
                font-size: 0.28rem;  
                padding-left: 0.3rem;  
                padding-right: 0.3rem;  
                border-bottom: 1px solid #E0E0E0;  
                background-color: white;  
                box-sizing: border-box;  
                float: left;  
                position: relative;  
                z-index: 2;  
            }  
            .reimbu_top{  
                padding-top: 0.2rem;  
            }  
            .reimbu_top>span:nth-child(2){  
                float: right;  
                color: #FFAA00;  
            }  
            .reimbu_bottom{  
                margin-top: 0.2rem;  
                margin-bottom: 0.2rem;  
            }  
            .reimbu_bottom>span:nth-child(2){  
                float: right;  
            }  
            .line_right{  
                position: relative;  
                left: 4.3rem;  
                height: 1.32rem;  
                width: 3.2rem;  
            }  
            .line_right div{  
                width: 1.6rem;  
                height: 1.32rem;  
                line-height: 1.32rem;  
                text-align: center;  
                font-size: 0.26rem;  
                box-sizing: border-box;  
            }  
            .line_right>div:nth-child(1){  
                background-color: yellow;  
                position: absolute;  
                top: 0;  
                right: 1.6rem;  
            }  
            .line_right>div:nth-child(2){  
                background-color: #fb4748;  
                position: absolute;  
                top: 0;  
                right: 0;  
            }  
        </style>  
    </head>  
    <body>  
          
        <div class="box-1">  
            <div class="box_count">  
    
                <div class="line">  
                    <div class="line_move" index="1">  
                        <div class="reimbu_top">  
                            <span>做个安静的美女子</span>  
                            <span>10001.00元</span>  
                        </div>  
                        <div class="reimbu_bottom">  
                            <span>2017-08-28</span>  
                            <span>未打印</span>  
                        </div>  
                    </div>  
                    <div class="line_right">  
                        <div>编辑</div>  
                        <div onclick="test(1)">删除</div>  
                    </div>  
                </div>  
                  
                <div class="line">  
                    <div class="line_move" index="1">  
                        <div class="reimbu_top">  
                            <span>做个安静的美女子</span>  
                            <span>10001.00元</span>  
                        </div>  
                        <div class="reimbu_bottom">  
                            <span>2017-08-28</span>  
                            <span>未打印</span>  
                        </div>  
                    </div>  
                    <div class="line_right">  
                        <div>编辑</div>  
                        <div onclick="test(1)">删除</div>  
                    </div>  
                </div>  
                  
                <div class="line">  
                    <div class="line_move" index="1">  
                        <div class="reimbu_top">  
                            <span>做个安静的美女子</span>  
                            <span>10001.00元</span>  
                        </div>  
                        <div class="reimbu_bottom">  
                            <span>2017-08-28</span>  
                            <span>未打印</span>  
                        </div>  
                    </div>  
                    <div class="line_right">  
                        <div>编辑</div>  
                        <div onclick="test(1)">删除</div>  
                    </div>  
                </div>  
                  
                <div class="line">  
                    <div class="line_move" index="1">  
                        <div class="reimbu_top">  
                            <span>做个安静的美女子</span>  
                            <span>10001.00元</span>  
                        </div>  
                        <div class="reimbu_bottom">  
                            <span>2017-08-28</span>  
                            <span>未打印</span>  
                        </div>  
                    </div>  
                    <div class="line_right">  
                        <div>编辑</div>  
                        <div onclick="test(1)">删除</div>  
                    </div>  
                </div>  
                  
                <div class="line">  
                    <div class="line_move" index="1">  
                        <div class="reimbu_top">  
                            <span>做个安静的美女子</span>  
                            <span>10001.00元</span>  
                        </div>  
                        <div class="reimbu_bottom">  
                            <span>2017-08-28</span>  
                            <span>未打印</span>  
                        </div>  
                    </div>  
                    <div class="line_right">  
                        <div>编辑</div>  
                        <div onclick="test(1)">删除</div>  
                    </div>  
                </div>  
    
                <div class="line">  
                    <div class="line_move" index="1">  
                        <div class="reimbu_top">  
                            <span>做个安静的美女子</span>  
                            <span>10001.00元</span>  
                        </div>  
                        <div class="reimbu_bottom">  
                            <span>2017-08-28</span>  
                            <span>未打印</span>  
                        </div>  
                    </div>  
                    <div class="line_right">  
                        <div>编辑</div>  
                        <div onclick="test(1)">删除</div>  
                    </div>  
                </div>  
                  
                 <div class="line">  
                    <div class="line_move" index="1">  
                        <div class="reimbu_top">  
                            <span>做个安静的美女子</span>  
                            <span>10001.00元</span>  
                        </div>  
                        <div class="reimbu_bottom">  
                            <span>2017-08-28</span>  
                            <span>未打印</span>  
                        </div>  
                    </div>  
                    <div class="line_right">  
                        <div>编辑</div>  
                        <div onclick="test(1)">删除</div>  
                    </div>  
                </div>  
                  
                <div class="line">  
                    <div class="line_move" index="1">  
                        <div class="reimbu_top">  
                            <span>做个安静的美女子</span>  
                            <span>10001.00元</span>  
                        </div>  
                        <div class="reimbu_bottom">  
                            <span>2017-08-28</span>  
                            <span>未打印</span>  
                        </div>  
                    </div>  
                    <div class="line_right">  
                        <div>编辑</div>  
                        <div onclick="test(1)">删除</div>  
                    </div>  
                </div>  
                  
                 <div class="line">  
                    <div class="line_move" index="1">  
                        <div class="reimbu_top">  
                            <span>做个安静的美女子</span>  
                            <span>10001.00元</span>  
                        </div>  
                        <div class="reimbu_bottom">  
                            <span>2017-08-28</span>  
                            <span>未打印</span>  
                        </div>  
                    </div>  
                    <div class="line_right">  
                        <div>编辑</div>  
                        <div onclick="test(1)">删除</div>  
                    </div>  
                </div>    
                  
                 <div class="line">  
                    <div class="line_move" index="1">  
                        <div class="reimbu_top">  
                            <span>做个安静的美女子</span>  
                            <span>10001.00元</span>  
                        </div>  
                        <div class="reimbu_bottom">  
                            <span>2017-08-28</span>  
                            <span>未打印</span>  
                        </div>  
                    </div>  
                    <div class="line_right">  
                        <div>编辑</div>  
                        <div onclick="test(1)">删除</div>  
                    </div>  
                </div>    
                  
                <div class="line">  
                    <div class="line_move" index="1">  
                        <div class="reimbu_top">  
                            <span>做个安静的美女子</span>  
                            <span>10001.00元</span>  
                        </div>  
                        <div class="reimbu_bottom">  
                            <span>2017-08-28</span>  
                            <span>未打印</span>  
                        </div>  
                    </div>  
                    <div class="line_right">  
                        <div>编辑</div>  
                        <div onclick="test(1)">删除</div>  
                    </div>  
                </div>  
                  
                <div class="line">  
                    <div class="line_move" index="1">  
                        <div class="reimbu_top">  
                            <span>做个安静的美女子</span>  
                            <span>10001.00元</span>  
                        </div>  
                        <div class="reimbu_bottom">  
                            <span>2017-08-28</span>  
                            <span>未打印</span>  
                        </div>  
                    </div>  
                    <div class="line_right">  
                        <div>编辑</div>  
                        <div onclick="test(1)">删除</div>  
                    </div>  
                </div>  
                  
            </div>  
        </div>  
          
        <script>  
              
            var moveArr = document.getElementsByClassName('line_move');  
            var startX = 0;  
            var moveX = 0;  
            var moveStatus = 0;   // 0:未滑出 1:已滑出  
            var arr = [];         // 判断手指触摸数量  
            function handler() { 
                return false; 
            }  
            for(var i=0; i<moveArr.length; i++) {  
                  
                moveArr[i].addEventListener('touchstart', function(event){    
                    startX = event.touches[0].clientX;    
                    arr.push(this.getAttribute('index'));    //arr.push(1); 不需要索引值就用这个  
                    // 添加阻止默认行为  
                    // this.addEventListener('touchmove', handler, false);   
                })    
                  
                moveArr[i].addEventListener('touchmove', function(event){  
                    moveX = event.touches[0].clientX - startX;   
                })  
    
                moveArr[i].addEventListener('touchend', function(event){  
                    moveEnd = moveX*0.01;  
                    console.log(moveEnd);
                    //向左滑动  
                    if( moveEnd < 0 && moveStatus == 0){    //未滑出
                        if( Math.abs(moveEnd) > 1 ){  
                            this.style.transform = "translate("+-3.2+"rem)";    
                            moveStatus = 1;  
                        }else{  
                            this.style.transform = "translate("+0+"rem)";    
                            moveStatus = 0;  
                        }  
                    }else if(moveEnd < 0 && moveStatus == 1){    //已滑出
                            moveArr[this.getAttribute('index')].style.transform = "translate("+0+"rem)";    
                            moveStatus = 0;  
                    // 向右滑动      
                    }else if(moveEnd > 0 && moveEnd > 1){   
                        this.style.transform = "translate("+0+"rem)";    
                        moveStatus = 0;  
                    }  
                    this.style.transitionDuration ="0.5s";  
                    moveX = 0;  
                    // 解绑事件  
                    this.removeEventListener('touchmove', handler, false);  
                })  
            }  
    
            for(var i=0; i<moveArr.length; i++) {  
                moveArr[i].addEventListener("touchstart", function(e){    
                    arr = [];  
                    moveStatus = 0;  
                    for(var j=0; j<moveArr.length; j++){  
                        moveArr[j].style.transform = "translate("+0+"rem)";    
                    }  
                });   
            }  
              
        </script>  
    </body>  
    </html>  

    相关文章

      网友评论

          本文标题:原声js模拟微信滑动

          本文链接:https://www.haomeiwen.com/subject/cipqjxtx.html