bindtouchstart:手指触摸动作开始
bindtouchmove:手指触摸后移动
bindtouchend:手指触摸动作结束
-
<view class='box'>
-
<view class="move_box {{move==1?'active':''}}" bindtouchmove='yidong' bindtouchstart='yidongkaishi' bindtouchend='yidongend'></view>
-
<view class='move_box1' style="right:{{move==1?'0rpx':'-150rpx'}} " bindtap='del'>删除</view>
-
</view>
-
data:{
-
s_weizhi:'',
-
e_weizhi:''
-
}
-
-
yidong:function(e){
-
var _this =this;
-
// console.log("移动的数据",e);
-
if(e.touches.length==1){
-
-
//手指移动时水平方向位置
-
var moveX = e.touches[0].clientX;
-
// console.log("x移动的距离", moveX);
-
var disX = this.data.s_weizhi - moveX;
-
console.log("比较移动开始的位置和移动后的位置",disX);
-
if (disX>30){
-
// console.log("向左移动")
-
_this.setData({
-
move:1
-
})
-
}
-
if (disX < 30){
-
// console.log("向右移动")
-
_this.setData({
-
move: 0
-
})
-
}
-
}
-
},
-
del:function(e){
-
console.log("删除")
-
}
效果图
未滑动
滑动
bindtouchstart:获取滑动开始的位置
bindtouchend:获取滑动结束的位置
bindtouchmove:
(1)实时获取水平滑动某个位置
(2)滑动一定的距离进行判断
(3)判断向左滑动还是向右滑动
(4)滑动空出来的位置由删除黄色的位置填充,过渡效果,让整个过程不那么生硬
阅读(2712) | 评论(1) | 转发(0) |