前端 html h5 移动端 手机端 仿ios左滑删除效果

实现功能:左滑列表项(<li class="route-item" ></li>),出现删除按钮(<div class="removeJs">删除</div>)。

js部分的代码如下:

 1 window.addEventListener(‘load‘,function(){
 2     var initX;
 3     var moveX;
 4     var X = 0;
 5     var objX = 0;
 6     var width=$(".removeJs").width();//按钮的宽度(removeJs修改为按钮的className)
 7     var liClassName=".route-item";//li的className(route-item修改为li的className)
 8     $("body").on("touchstart",liClassName,function (event) {
 9         var obj=this;
10             initX = event.targetTouches[0].pageX;
11             objX =(obj.style.WebkitTransform.replace(/translateX\(/g,"").replace(/px\)/g,""))*1;
12         if( objX == 0){
13             $("body").on(‘touchmove‘,liClassName,function(event) {
14                 // event.preventDefault();
15                 var obj=this;
16                     moveX = event.targetTouches[0].pageX;
17                     X = moveX - initX;
18                     if (X > 0) {
19                         obj.style.WebkitTransform = "translateX(" + 0 + "px)";
20                     }
21                     else if (X < 0) {
22                         var l = Math.abs(X);
23                         obj.style.WebkitTransform = "translateX(" + -l + "px)";
24                         if(l>width){
25                             l=width;
26                             obj.style.WebkitTransform = "translateX(" + -l + "px)";
27                         }
28                     }
29             });
30         }
31         else if(objX<0){
32             $("body").on("touchmove",liClassName,function (event) {
33                 // event.preventDefault();
34                 var obj=this;
35                     moveX = event.targetTouches[0].pageX;
36                     X = moveX - initX;
37                     if (X > 0) {
38                         var r = -width + Math.abs(X);
39                         obj.style.WebkitTransform = "translateX(" + r + "px)";
40                         if(r>0){
41                             r=0;
42                             obj.style.WebkitTransform = "translateX(" + r + "px)";
43                         }
44                     }
45                     else {     //向左滑动
46                         obj.style.WebkitTransform = "translateX(" + -width + "px)";
47                     }
48             });
49         }
50     })
51     $("body").on("touchend",liClassName,function (event) {
52         var obj=this;
53             objX =(obj.style.WebkitTransform.replace(/translateX\(/g,"").replace(/px\)/g,""))*1;
54             if(objX>-width/2){
55                 obj.style.WebkitTransform = "translateX(" + 0 + "px)";
56             }else{
57                 obj.style.WebkitTransform = "translateX(" + -width + "px)";
58             }
59     })
60 })

ps:实际项目中,只需修改如下两行代码即可:

var width=$(".removeJs").width();var liClassName=".route-item";
时间: 2024-07-30 00:26:43

前端 html h5 移动端 手机端 仿ios左滑删除效果的相关文章

Android开发学习之路-PopupWindow和仿QQ左滑删除

这周作业,要做一个类似QQ的左滑删除效果的ListView,因为不想给每个item都放一个按钮,所以决定用PopupWindow,这里记录一下 先放一下效果图: 先说明一下这里面的问题: ①没有做到像QQ那样可以允许item跟随手指移动,虽然PopupWindow有update方法让我们动态移动,但是在屏幕外移动会没有动画效果,直接弹进来 ②仔细观察可以发现,item的滑动和删除按钮的滑动是分开的,无法保证它们会一起播放,QQ的动画可以 再说说大概的思路,因为我们没有让item都带上Button

android 下拉刷新上拉加载更多,高仿ios左滑动删除item,解决了众多手势问题

一.前言 老规矩,别的不说,这demo是找了很相关知识集合而成的,可以说对我这种小白来说是绞尽脑汁!程序员讲的是无图无真相!现在大家一睹为快! 二.比较关键的还是scroller这个类的 package com.icq.slideview.view; import android.content.Context; import android.util.AttributeSet; import android.util.Log; import android.util.TypedValue; i

JS前端开发判断是否是手机端并跳转操作(小结)

JS前端开发判断是否是手机端并跳转操作(小结) 这篇文章主要介绍了JS前端开发判断是否是手机端并跳转操作,非常不错,具有参考借鉴价值,需要的朋友可以参考下 常用跳转代码 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 <script type="text/javascript">  // borwserR

h5移动端聊天室|仿微信界面聊天室|h5多人聊天室

今年的FIFA世界杯甚是精彩,最近兴致高涨就利用HTML5开发了一个手机端仿微信界面聊天室,该h5聊天室采用750px全新伸缩flex布局,以及使用rem响应式配合fontsize.js,页面弹窗则是使用自己开发的wcPop.js插件:编辑器部分由原先的单一表情新增为动图表情,实现了消息.表情发送 | 大图.视频效果预览 | 仿微信红包.打赏等微交互功能. 案例截图: // ...滚动聊天区底部 function wchat_ToBottom(){ //$(".wc__chatMsg-panel

jquery支持PC端手机端幻灯片代码

分享一款支持PC端手机端幻灯片代码是一款支持移动触摸,支持鼠标拖拽切换,支持带进度条的自动播放模式.交果图如下 : 在线预览   源码下载 实现的代码. html代码: <div class="flex"> <ul class="slides"> <li data-title="Slide 1"> <img alt="" src="img/beasts_feature.jpg

手机端左侧固定导航栏推出效果

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-

&#8203;android第十一期 - SmoothSwitchLibrary仿IOS切换Activity动画效果

项目已经从git上独立出来,各个效果已经分好类别,页面new调用就可以了,不会卡顿. 效果如下图: ​android第十一期 - SmoothSwitchLibrary仿IOS切换Activity动画效果

在uwp仿IOS的页面切换效果

有时候我们需要编写一些迎合IOS用户使用习惯的uwp应用,我在这里整理一下仿IOS页面切换效果的代码. 先分析IOS的页面切换.用户使用左右滑动方式进行前进和后退,播放类似于FlipView的切换动画.导航到新页面时,使用页面前进的动画. UWP自带很多切换效果,位于 Windows.UI.Xaml.Media.Animation 中.与苹果的切换效果最接近的是 PaneThemeTransition (而不是EdgeUIThemeTransition). PaneThemeTransition

H5+jqweui实现手机端图片压缩上传

主要功能,使用H5的formData上传base64格式的图片,canvas压缩图片,前端样式使用weui,为方便起见,使用了jquery封装过的weui,jqweui. 话不多少,开始上代码. 前端代码,直接在jqweui官网下的demo里改的(是dist下的demo) <!DOCTYPE html> <html> <head> <title>jQuery WeUI</title> <meta charset="utf-8&qu