zoukankan      html  css  js  c++  java
  • 滑动删除

    <!DOCTYPE html>
    <html lang="en">

    <head>
    <meta charset="UTF-8">
    <meta name="viewport" id="viewport" content="width=device-width, initial-scale=1">
    <title>html5向左滑动删除特效</title>
    <style>
    * {
    padding: 0;
    margin: 0;
    list-style: none;
    }

    header {
    background: #f7483b;
    border-bottom: 1px solid #ccc
    }

    header h2 {
    text-align: center;
    line-height: 54px;
    font-size: 16px;
    color: #fff
    }

    .list-ul {
    overflow: hidden
    }

    .list-li {
    line-height: 60px;
    border-bottom: 1px solid #fcfcfc;
    position: relative;
    padding: 0 12px;
    color: #666;
    background: #f2f2f2;
    -webkit-transform: translateX(0px);
    }

    .btn {
    position: absolute;
    top: 0;
    right: -80px;
    text-align: center;
    background: #ffcb20;
    color: #fff;
    80px
    }
    </style>
    <script>
    /*
    * 描述:html5苹果手机向左滑动删除特效
    */
    window.addEventListener('load', function() {
    var initX; //触摸位置
    var moveX; //滑动时的位置
    var X = 0; //移动距离
    var objX = 0; //目标对象位置
    window.addEventListener('touchstart', function(event) {
    event.preventDefault();
    var obj = event.target.parentNode;
    if (obj.className == "list-li") {
    initX = event.targetTouches[0].pageX;
    objX = (obj.style.WebkitTransform.replace(/translateX(/g, "").replace(/px)/g, "")) * 1;
    }
    if (objX == 0) {
    window.addEventListener('touchmove', function(event) {
    event.preventDefault();
    var obj = event.target.parentNode;
    if (obj.className == "list-li") {
    moveX = event.targetTouches[0].pageX;
    X = moveX - initX;
    if (X >= 0) {
    obj.style.WebkitTransform = "translateX(" + 0 + "px)";
    } else if (X < 0) {
    var l = Math.abs(X);
    obj.style.WebkitTransform = "translateX(" + -l + "px)";
    if (l > 80) {
    l = 80;
    obj.style.WebkitTransform = "translateX(" + -l + "px)";
    }
    }
    }
    });
    } else if (objX < 0) {
    window.addEventListener('touchmove', function(event) {
    event.preventDefault();
    var obj = event.target.parentNode;
    if (obj.className == "list-li") {
    moveX = event.targetTouches[0].pageX;
    X = moveX - initX;
    if (X >= 0) {
    var r = -80 + Math.abs(X);
    obj.style.WebkitTransform = "translateX(" + r + "px)";
    if (r > 0) {
    r = 0;
    obj.style.WebkitTransform = "translateX(" + r + "px)";
    }
    } else { //向左滑动
    obj.style.WebkitTransform = "translateX(" + -80 + "px)";
    }
    }
    });
    }

    })
    window.addEventListener('touchend', function(event) {
    event.preventDefault();
    var obj = event.target.parentNode;
    if (obj.className == "list-li") {
    objX = (obj.style.WebkitTransform.replace(/translateX(/g, "").replace(/px)/g, "")) * 1;
    if (objX > -40) {
    obj.style.WebkitTransform = "translateX(" + 0 + "px)";
    objX = 0;
    } else {
    obj.style.WebkitTransform = "translateX(" + -80 + "px)";
    objX = -80;
    }
    }
    })
    })
    </script>
    </head>

    <body>
    <header>
    <h2>消息列表</h2>
    </header>
    <section class="list">
    <ul class="list-ul">
    <li id="li" class="list-li">
    <div class="con">
    你的快递到了,请到楼下签收
    </div>
    <div class="btn">删除</div>
    </li>
    <li class="list-li">
    <div class="con">
    哇,你在干嘛,快点来啊就等你了
    </div>
    <div class="btn">删除</div>
    </li>
    </ul>
    </section>
    </body>

    </html>

  • 相关阅读:
    如何在sharepoint2010中配置Google Anlytics 分析服务
    如何为基于windows验证的站点的某个页面、文件或文件夹单独设置匿名访问
    URL 路径长度限制(错误:指定的文件或文件夹名称太长)
    规划在sharepoint中使用安全组
    sql server 2014预览版发布
    如何排查sharepoint2010用户配置文件同步服务启动问题
    PHP变量问题,Bugku变量1
    BugkuWeb本地包含
    本地域名解析知识hosts
    BugkuWEB矛盾
  • 原文地址:https://www.cnblogs.com/liangxuru/p/6260378.html
Copyright © 2011-2022 走看看