JS做出移动端触摸轮播效果

这次给大家带来JS做出移动端触摸轮播效果,JS做出移动端触摸轮播效果的注意事项有哪些,下面就是实战案例,一起来看一下。

下面是移动端手指滑动轮播图的完整代码。

 *{margin:0;padding:0;}li{list-style:none;}.lb{width:320px;height:130px;position:relative;margin:20px auto;overflow: hidden;}.lb .lb_img{width:2240px;height:130px;position:absolute;left:-320px;}.lb .lb_img img{width:320px;height:130px;float:left;display:block;}.lb ul{width:35px;height:4px;position:absolute;bottom:10px;left:50%;margin-left:-15px;}.lb ul li{width:4px;height:4px;border-radius:2px;border:0.25px solid #fff;margin-left:2.5px;background:#666;float:left;cursor:pointer;}.lb ul .active{background:#fff;}.lb ul li:hover{background:#fff;}

JS做出移动端触摸轮播效果JS做出移动端触摸轮播效果JS做出移动端触摸轮播效果JS做出移动端触摸轮播效果JS做出移动端触摸轮播效果JS做出移动端触摸轮播效果JS做出移动端触摸轮播效果

var lb = document.querySelector(".lb");var lb_img = document.querySelector(".lb .lb_img");var img = document.querySelectorAll(".lb .lb_img img")var lis = document.querySelectorAll(".lb ul li");var i=2; // 初始化手指坐标点 var startPoint = 0; var startEle = 0; //手指按下 lb.addEventListener("touchstart",function(e){ startPoint = e.changedTouches[0].pageX; startEle = lb_img.offsetLeft; clearInterval(Time) }); //手指滑动 lb.addEventListener("touchmove",function(e){ var currPoint = e.changedTouches[0].pageX; var disX = currPoint - startPoint; var left = startEle + disX; lb_img.style.left = left + "px"; }); //当手指抬起的时候, lb.addEventListener("touchend",function(e){ var currPoint = e.changedTouches[0].pageX; var disX = - (currPoint - startPoint); var left = startEle + disX; if(disX > 150){ i++; for(var q=0;q<lis.length;q++){ lis[q].className = ''; } if(i == 7){ i=2; } lis[i-2].className= "active" ; lb_img.style.left = -320*(Math.round(disX/320)+i+1)+ 'px'; }else{ lb_img.style.left = -320*(i-1) + "px"; } if(disX < -150){ i--; for(var q=0;q<lis.length;q++){ lis[q].className = ''; } if(i == 1){ i=6; } lis[i-2].className= "active" ; lb_img.style.left = -320*(Math.round(-disX/320)+i-2) + 'px'; }else{ lb_img.style.left = -320*(i-1) + "px"; } Time=setInterval(autoplay,2000); })//设置定时器Time=setInterval(autoplay,2000); function autoplay(){ i++; for(var q=0;q<lis.length;q++){ lis[q].className = ''; } if(i == 7){ i=2; } lis[i-2].className= "active" ; for(var a=0; a<320;a++){ setTimeout(function(){ var left = lb_img.style.left ? lb_img.style.left : "-320px"; left = parseInt(left)-1; if(left<-1920){ left=-321; } lb_img.style.left = left + "px"; },a); } }

登录后复制

相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!

推荐阅读:

怎样操作jackson解析json字符串时首字母的大小写转换

element-ui实现导入导出

以上就是JS做出移动端触摸轮播效果的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2772513.html

(0)
上一篇 2025年3月8日 13:19:19
下一篇 2025年3月8日 13:19:29

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • JS怎样将json格式数组下载到excel表格里

    这次给大家带来js怎样将json格式数组下载到excel表格里,js将json格式数组下载到excel表格里的注意事项有哪些,下面就是实战案例,一起来看一下。 实例如下: $(document).ready(function(){ $(‘#…

    编程技术 2025年3月8日
    100
  • JS的多线程运行库Nexus.js使用详解

    这次给大家带来JS的多线程运行库Nexus.js使用详解,使用JS多线程运行库Nexus.js的注意事项有哪些,下面就是实战案例,一起来看一下。 首先,如果你不熟悉这个项目,建议先阅读之前写的一系列文章。如果你不想阅读这些,不用担心。这里面…

    编程技术 2025年3月8日
    200
  • JS操作TXT文本在指定位置插入内容

    这次给大家带来JS操作TXT文本在指定位置插入内容,JS操作TXT文本在指定位置插入内容的注意事项有哪些,下面就是实战案例,一起来看一下。 实例如下所示: function insertAtCursor(myField, myValue) …

    编程技术 2025年3月8日
    200
  • nodejs怎么实现gulp打包功能

    这次给大家带来nodejs怎么实现gulp打包功能,nodejs实现gulp打包功能的注意事项有哪些,下面就是实战案例,一起来看一下。 最近换了家新公司,由于是创业公司,项目基本从零开始搭建。工作几年,也没想过写点什么技术性的东西,今天突然…

    编程技术 2025年3月8日
    200
  • 使用nodejs在微信中调用收货地址

    这次给大家带来使用nodejs在微信中调用收货地址,使用nodejs在微信中调用收货地址的注意事项有哪些,下面就是实战案例,一起来看一下。 1、微信调取收货地址API,公众号必须有支付权限。2、配置对应使用收货地址功能的域名(域名配置请在公…

    编程技术 2025年3月8日
    200
  • Vuejs响应式原理具体解析

    这次给大家带来Vuejs响应式原理具体解析,使用Vuejs响应式原理的注意事项有哪些,下面就是实战案例,一起来看一下。 响应式原理 > vuejs中的模型(model)和视图(view)是保持同步的,在修改数据的时候会自动更新视图,这…

    编程技术 2025年3月8日
    200
  • JS的class、构造函数、工厂函数使用方法

    这次给大家带来JS的class、构造函数、工厂函数使用方法,使用JSclass、构造函数、工厂函数的注意事项有哪些,下面就是实战案例,一起来看一下。 到了ES6时代,我们创建对象的手段又增加了,在不同的场景下我们可以选择不同的方法来建立。现…

    编程技术 2025年3月8日
    200
  • JS使用递归实现网页版简洁计算器

    这次给大家带来JS使用递归实现网页版简洁计算器,JS使用递归实现网页版简洁计算器的注意事项有哪些,下面就是实战案例,一起来看一下。 递归实现网页版计算器可以简化代码,设计思路: 1、css+html实现计算器的外观,给每个button绑定n…

    编程技术 2025年3月8日
    200
  • JS怎样让元素沿着抛物线轨迹运动

    这次给大家带来JS怎样让元素沿着抛物线轨迹运动,JS让元素沿着抛物线轨迹运动的注意事项有哪些,下面就是实战案例,一起来看一下。 js实现小球抛物轨迹运动的大致思路: 1、用setInterval()方法,进行间隔性刷新,更新小球位置,以实现…

    编程技术 2025年3月8日
    200
  • vue.js vue-router提升用户体验

    这次给大家带来vue.js vue-router提升用户体验,vue.js vue-router提升用户体验的注意事项有哪些,下面就是实战案例,一起来看一下。 前言 大家都知道对于单页应用,官方提供了vue-router进行路由跳转的处理,…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论