移动WEB模拟原声APP滑动删除
移动WEB模拟原声APP滑动删除
效果
代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>模拟App滑动删除</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
<link rel="stylesheet" href="/static/css/base.css">
<link rel="stylesheet" href="http://at.alicdn.com/t/font_1454057613_1757398.css">
<style>
body {
background-color: #f2f2f2;
}
h1 {
text-align: center;
font-size: 1.4em;
padding-top: 2em;
padding-bottom: 2em;
}
.wrapper {
position: relative;
height: 100px;
overflow: hidden;
padding-bottom: 5%;
}
.container {
position: absolute;
left: 0;
width: 100%;
height: 100px;
line-height: 100px;
padding-left: 5%;
box-sizing: border-box;
background-color: #fff;
transition: left cubic-bezier(.68,.69,.11,.4) 0.2s;
-webkit-transition: left cubic-bezier(.68,.69,.11,.4) 0.2s;
font-size: 1.2em;
font-weight: 200;
}
.delete {
float: left;
position: absolute;
width: 100px;
top: 0;
right: -100px;
background-color: #f00;
color: #fff;
text-align: center;
height: 100px;
line-height: 100px;
}
.delete i.iconfont {
font-size: 1em;
padding-right: 5px;
}
p {
text-align: center;
padding-top: 4em;
padding-bottom: 6em;
color: #555;
font-size: 1em;
}
</style>
</head>
<body>
<h1>移动WEB模拟原声APP滑动删除</h1>
<div class="wrapper">
<div class="container">左右滑动<div class="delete"><i class="iconfont icon-shanchu"></i>删除</div></div>
</div>
<div class="wrapper">
<div class="container">左右滑动<div class="delete"><i class="iconfont icon-shanchu"></i>删除</div></div>
</div>
<div class="wrapper">
<div class="container">左右滑动<div class="delete"><i class="iconfont icon-shanchu"></i>删除</div></div>
</div>
<div class="wrapper">
<div class="container">左右滑动<div class="delete"><i class="iconfont icon-shanchu"></i>删除</div></div>
</div>
<div class="wrapper">
<div class="container">左右滑动<div class="delete"><i class="iconfont icon-shanchu"></i>删除</div></div>
</div>
<p>西安领可网络 ChenShuo 2016</p>
<script>
var container = document.querySelectorAll('.container');
for(var i=0; i<container.length; i++) {
var x, y, X, Y, swipeX, swipeY;
container[i].addEventListener('touchstart', function(event) {
x = event.changedTouches[0].pageX;
y = event.changedTouches[0].pageY;
swipeX = true;
swipeY = true ;
});
container[i].addEventListener('touchmove', function(event) {
X = event.changedTouches[0].pageX;
Y = event.changedTouches[0].pageY;
// 左右滑动
if(swipeX && Math.abs(X-x) - Math.abs(Y-y) > 0) {
// 阻止事件冒泡
event.stopPropagation();
if(X - x > 10) {
event.preventDefault();
this.style.left = '0px';
}
if(x - X > 10) {
event.preventDefault();
this.style.left = '-100px';
}
swipeY = false;
}
// 上下滑动
if(swipeY && Math.abs(X-x) - Math.abs(Y-y) < 0) {
swipeX = false;
}
});
}
</script>
</body>
</html>
移动WEB模拟原声APP滑动删除的更多相关文章
- Safari WebApp 模拟 原声APP禁止打开新窗口JS代码
if(("standalone" in window.navigator) && window.navigator.standalone) { var noddy, ...
- 原生H5页面模拟APP左侧滑动删除效果
话不多说,往左侧滑动,显示删除,我们先来看一下效果图:如下: 这个布局我就不多说,反正就是一行ul,li, class名“item” js代码如下: $(".item").on(& ...
- 关于ios原声嵌入web页面的问题
当在一个界面中既有原生又有web的时候,如果想让上下整体滑动的话,我们怎么确定web的高度呢,下面分享一下我的心得 首先在webView的代理方法中我们可以获取到加载完整个web页面的高度 - (vo ...
- Android 用HorizontalScrollView实现ListView的Item滑动删除 ,滑动错乱 冲突
用HorizontalScrollView实现类似微信的滑动删除 测试于:Android2.2+ 对于Android来说按键操作已经在减少,越来越多的手势操作层出不穷,今天介绍一款LIstView的I ...
- Android开发学习之路-RecyclerView滑动删除和拖动排序
Android开发学习之路-RecyclerView使用初探 Android开发学习之路-RecyclerView的Item自定义动画及DefaultItemAnimator源码分析 Android开 ...
- Web程序员开发App系列 - 申请苹果开发者账号
Web程序员开发App系列 Web程序员开发App系列 - 认识HBuilder Web程序员开发App系列 - 申请苹果开发者账号 Web程序员开发App系列 - 调试Android和iOS手机代码 ...
- ListView滑动删除效果实现
通过继承ListView然后结合PopupWindow实现 首先是布局文件: delete_btn.xml:这里只需要一个Button <?xml version="1.0" ...
- Android的SwipeToDismiss第三方开源框架模拟QQ对话列表侧滑删除,置顶,将头像图片圆形化处理。
<Android SwipeToDismiss:左右滑动删除ListView条目Item> Android的SwipeToDismiss是github上一个第三方开源框架(github ...
- 下拉刷新列表添加SwipeDismissListViewTouchListener实现滑动删除某一列。
<Android SwipeToDismiss:左右滑动删除ListView条目Item> Android的SwipeToDismiss是github上一个第三方开源框架(github上的 ...
随机推荐
- SQL截取字符串
SUBSTRING 返回字符.binary.text 或 image 表达式的一部分.有关可与该函数一起使用的有效 Microsoft® SQL ...
- 转 excel表怎么自动分列
http://jingyan.baidu.com/article/656db918fc3501e380249c53.html
- listener.ora
EOF YESTERDAY=`cat /database/log/tns_log/yesterday.out` TODAY=`date '+%d-%b-%Y'` echo $YESTERDAY $T ...
- LightOJ 1282 Leading and Trailing 数论
题目大意:求n^k的前三位数 和 后三位数. 题目思路:后三位数直接用快速幂取模就行了,前三位则有些小技巧: 对任意正数都有n=10^T(T可为小数),设T=x+y,则n=10^(x+y)=10^x* ...
- 天天果园,中粮我买网等生鲜APP竞品分析
奈何对生鲜行业的品类,价格,供应链不熟悉,想先从APP开始来了解生鲜行业和各个生鲜企业,若有不足之处,还望海量,也请帮忙指正. 选取了以下竞品:天天果园,易果生鲜,一米鲜,中粮我买网,爱鲜蜂,每日优鲜 ...
- gradle 构建spring源码时候报错
这是使用jdk1.7报的错,我卸载1.7后使用1.8 ,就可以了
- UVALive 2324 Human Gene Functions(动态规划)
题意:求出将两个字符串改成一样长度所能形成最大的相似度. 思路:这个可以说是编辑距离的一个变形,编辑距离最终状态时要两个字符串完全一致,这个就是要求长度一样,而且这个只允许插入“—”这一个字符.模仿编 ...
- C++:bitset类的使用
#include <iostream> #include <bitset> using namespace std; int main() { //初始化一个bitmap , ...
- Chapter 1 First Sight——13
It was just drizzling still, not enough to soak me through immediately as I reached for the house ke ...
- hdu_5648_DZY Loves Math
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5648 题意:给你n,m 让你求出 for(1-n)for(1-m)gcd(i&j,i|j)的s ...