首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

原生js实现简单移动轮播

最近项目不是很忙,自己就用原生js写了一个简单的移动轮播的小demo,可实现自动轮播和手势滑动轮播,然后就把它记录到个人博客里。还有很多不足的地方,希望多多指出,以便改进。...device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> 移动...{ padding: 0; margin: 0; -webkit-box-sizing: border-box;/*兼容移动主流浏览器*/ box-sizing: border-box...,sans-serif;/*移动默认的字体*/ font-size: 14px; color: #333; } ol,ul{ list-style: none; } /*清除浮动...动画结束瞬间定位 * 2.点需要随着轮播的滚动改变对应的点 改变当前样式 当前图片的索引 * 3.手指滑动的时候让轮播滑动 touch事件 记录坐标轴的改变 改变轮播的定位

20.6K60

vue.js项目中用原生js实现移动轮播

Vue.js项目中封装轮播组件 前言 一、了解原生js移动的事件 二、轮播实战 三、效果 结束语 前言 今天我在vue.js项目实战开发过程中遇到了实现轮播效果的问题,因为不想因为一个轮播而引用整个...jquery,而且我还发现自己根本就不清楚移动的一些事件,所以我就进行了一些资料查找,并最终解决了这个问题,接下来跟大家分享一下我的解决问题的过程....公众号:前端印象 不定时有送书活动,记得关注~ 关注后回复对应文字领取:【面试题】、【前端必看电子书】、【数据结构与算法完整代码】、【前端技术交流群】 一、了解原生js移动的事件 原生js移动的事件一共有四种...this.CurrentImg * this.bannerwidth + 'px' } } }, //slidings()方法用于处理在滑动过程中,轮播跟着手指滑动的距离移动...(有正负))、CurrentImg(当前轮播索引) 在页面挂在完成后, 触发methods中的startPlay方法,开启轮播功能 在触摸事件中主要运用 StartPoint - EndPoint 的值使得图片跟着手指的滑动方向同步移动

9.1K20
您找到你想要的搜索结果了吗?
是的
没有找到

移动轮播

移动常见特效 1.1 案例: 移动轮播 移动轮播功能和基本PC一致。 可以自动播放图片 手指可以拖动播放轮播 1.2....案例分析: 自动播放功能 开启定时器 移动移动,可以使用translate 移动 想要图片优雅的移动,请添加过渡效果 // 1....current"); // 让当前索引号的小li加上current add ol.children[index].classList.add("current"); }); 手指滑动轮播...本质就是ul跟随手指移动,简单说就是移动拖动元素 触摸元素touchstart: 获取手指初始坐标 移动手指touchmove: 计算手指的滑动距离,并且移动盒子 离开手指...手指滑动轮播 // 触摸元素 touchstart: 获取手指初始坐标 var startX = 0; var moveX = 0; // 后面我们会使用这个移动距离所以要定义一个全局变量

1.2K20

移动轮播

移动轮播功能和PC基本一致。...功能需求: 可以自动播放图片 手指可以拖动播放轮播 案例分析: 自动播放功能 开启定时器 移动移动,可以使用translate 移动 想要图片优雅的移动,请添加过渡效果...classList.remove( 'current' ) ; //让当前索引号的小li加上current add ol.children[index].classList.add( 'current'); 手指滑动轮播...本质就是ul跟随手指移动,简单说就是移动拖动元素 触摸元素touchstart:  获取手指初始坐标 移动手指touchmove:  计算手指的滑动距离,并且移动盒子 离开手指touchend...滑动也分为左滑动和右滑动判断的标准是 移动距离正负 如果是负值就是左滑 反之右滑 如果是左滑就播放下一张 (index++) 如果是右滑就播放上一张  (index--) // 4.手指滑动轮播

81540

移动轮播笔记

1.触屏事件 1.1触屏事件概述 移动浏览器兼容性好,我们不需要考虑以前JS的兼容问题,可以放心使用原生JS书写效果,但是移动也有自己独特的地方,比如触屏事件touch(也叫触摸事件),Android...(); 2.移动轮播案例 三张图片进行轮播,需要将第一张克隆一张到最后,最后一张克隆一张到第一张,大概意思为下图: 11.jpg html布局 ...visibility: hidden; } .container { width: 100%; /* 限制版心的宽度范围,在pc也能显示移动网页...,根据移动距离去判断是回弹还是播放上一张下一张 5.如果移动距离小于某个像素 就回弹 6.如果移动距离大于某个像素就上一张或者下一张 js代码: //1.获取元素 var...//让当前索引号的小li加上current 类名 ol.children[index].classList.add('current'); }); //4.手指滑动轮播

2.5K21

移动轮播效果实现

class="current"> 基本css /* 轮播...*宽度 js代码 window.addEventListener('load',function(){ //1....小圆点高亮实现 这里我们要用到一个新的属性---classList classList属性是HTML5新添加的一个属性,可以返回元素的类名,不过ie10以上才支持 但是我们是做移动所以不用考虑ie的问题...li高亮 ol.children[index].classList.add('current') }) }) 手动拖放元素 接下来我们实现手指拖放元素,通过手指控制图片位置,要用到两个移动的事件...代表右滑,此时实现上一张 2.1.2:当滑动距离<0时 代表左滑,此时实现下一张 2.2用户滑动距离取绝对值<50 此时实现回弹操作 并且在手指离开时我们清除了原来的滑动距离;重新开启了定时器 到此轮播制作完成

1.6K10

手撸移动轮播(内含源码)

移动轮播 移动轮播与PC段轮播,在技术选择上是有区别的,因为移动的浏览器版本非常好,对于H5和CSS3的支持非常完美,所以很多效果可以CSS3的方式实现,比如可以使用 Transorm 属性替代原来的动画函数...可以自动播放图片 手指可以拖动播放轮播 添加指示器,但只起到指示作用,点击不能切换图片 不需要左右导航 因为移动轮播的宽度一般与屏幕一样宽,所以focus不设置宽度 移动使用CSS3的方式进行图片切换...下面我们轮播的实现就是基于这个js插件(可以访问官网下载插件) 代码: <!...1)手指按下,停止自动轮播,手指离开屏幕继续开启自动轮播 2)实现轮播(focus_img)随着手指的移动移动 3)手指离开屏幕后,判断用户手指的移动距离...,根据距离判断是切换轮播还是回弹轮播 4)如果用户只是按下手指,并没有移动,然后手指就离开屏幕,可以不执行第三步。

1.2K00

学用HooksReact组件——基础版移动无缝轮播组件

前言 最近忙于业务代码和修改上古MPA的JS页面,对React欠缺使用和学习,感觉自己都快写不来代码了。拿来主义思想占据了思维,所以还是要造造轮子。...因为最近在做移动的东西,所以尝试一个移动的无缝轮播,当前版本只支持手势切换和点击切换功能。文章主要包括从简单雏形到最终效果所有的思路和代码。...,循环补位,本质上思路不变,只是当在最后一个轮播时,把第一个轮播移动到它的后面,然后瞬间把第一个轮播移动到第一个位置。...轮播子组件需要位置可移动所以都使用绝对定位。...总结 到这里,一个简易版的移动手势滚动组件就完成了,里面还有很多的不足、功能缺陷和优化点,例如容器宽度和高度的判断,宽度直接取得手机宽度,高度我直接死的;轮播子组件的懒加载等等,之后也会慢慢进行增强和优化

3.7K20

原生JS实现移动滑动反弹

就是类似于 PC的滚动事件,但是在移动是没有滚动事件的,所以就要用到 Touch事件结合 js去实现,效果如下: ? 1. 准备工作 什么是移动的 Touch事件?...在移动 Touch事件可以细分成三种,分别是: touchstart、 touchmove和 touchend,并且 touch事件必须要用 addEventListener去监听。...基本结构 此案例模拟的是移动的一种滑动菜单效果。...再次滑动 上面的效果,细心的朋友可能已经发现了问题,在第一次的时候,得到了我们想要的效果,但是在第二次的时候,我们继续向下移动了一段距离,但是 ul并没有接着第一次的位置继续向下,而是瞬间跳了上去。...maximum-scale=1.0, minimum-scale=1.0">    移动

10.2K20

第54天:原生js实现轮播效果

一、轮播的原理: 一系列的大小相等的图片平铺,利用CSS布局只显示一张图片,其余隐藏。通过计算偏移量利用定时器实现自动播放,或通过手动点击事件切换图片。 ?...当你从最后一张切换回第一张时,有很大空白,利用两张辅助来填补这个空白。 这里补充下无缝滚动,直接看代码,复制最后一张图片放置第一张图片前,同时复制第一张图片放置最后一张图片的后面。...#prev { left: 20px; } #next { right: 20px; } 四、Js...轮播,顾名思义,是自己会动的图片,这个时候我们需要用到浏览器的内置对象定时器。 对于定时器,有必要说明一下setInterval()跟setTimeout的区别了。...这里,我们需要对其DOM操作,需要获取整个轮播区域; var container = document.getElementById('container'); function stop() {

6.7K21
领券