首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

原生JS实现移动滑动反弹

什么是 Touch滑动?就是类似于 PC的滚动事件,但是在移动是没有滚动事件的,所以就要用到 Touch事件结合 js去实现,效果如下: ? 1. 准备工作 什么是移动的 Touch事件?...基本结构 此案例模拟的是移动的一种滑动菜单效果。...       css部分 在列表的父盒子上设定一个 overflow:hidden属性,使超出盒子部分的列表暂时隐藏掉,后面会通过 js去实现滑动。...首次滑动 手指触摸到列表向下滑动的时候,列表应该跟着向下滑动,当手指离开屏幕的时候,列表应该停在滑动的位置。这里就会用到上面准备阶段的知识点了,不明白的可以参考上面的概念。...先来张示意图,怎么通过 js列表滑动起来 ?

10.2K20

10-移动开发教程-移动事件

:用户双击手机页面的时候,浏览器会智能的缩放当前页面到原始大小。 ​...tap: 手指碰一下屏幕会触发 longTap: 手指长按屏幕会触发 singleTap: 手指碰一下屏幕会触发 doubleTap: 手指双击屏幕会触发 5.2 swipe类事件 滑动事件,有swipe...swipe:手指在屏幕上滑动时会触发 swipeLeft:手指在屏幕上向左滑动时会触发 swipeRight:手指在屏幕上向右滑动时会触发 swipeUp:手指在屏幕上向上滑动时会触发 swipeDown...:手指在屏幕上向下滑动时会触发 5.3 zepto的手势相关事件 Zepto.js 是一个轻量级的针对现代高级浏览器的JavaScript库, 它适配了jQuery的大部分api,也就是jQuery怎么用...它非常小,非常适合移动。 Zepto.js的touch模块中封装了手势相关的代码。

6.7K80

JavaScript——触屏事件

概述 移动浏览器兼容性较好,我们不需要考虑以前js的兼容性问题,可以放心的使用原生js书写效果,但是移动也有自己独特的地方。比如触屏事件touch(也称触摸事件),Android和IOS都有。...touchstart、touchmove、touchend三个事件都会各自事件对象 触摸事件对象重点我们看三个常见对象列表: 触摸列表 说明 touches 正在触摸屏幕的所有手指的一个列表 targetTouches...正在触摸当前DOM元素上的手指的一个列表 changedTouches 手指状态发生了改变的列表,从无到有,从有到无变化 移动拖动元素 touchstart、touchmove、touchend可以实现拖动元素...但是拖动元素需要当前手指的坐标值我们可以使用targetTouchies[0]里面的pageX和pageY 移动拖动的原理:手指移动中,计算出手指移动的距离,然后用盒子原来的位置+手指移动的距离 手指移动的距离...:手指滑动中的位置减去手指刚开始触摸的位置 拖动元素三步曲: 触摸元素touchstart:获取手指初始坐标,同时获得盒子原来的位置 移动手指touchmove:计算手指滑动距离,并且移动盒子 离开手指

2.1K10

JavaScript之移动网页特效(1)

学习目标: 触屏事件概述: 移动浏览器兼容性较好,我们不需要考虑以前JS的兼容性问题,可以放心的使用原生JS的书写效果,但是移动也有自己独特的地方,比如触屏事件touch(也称触摸事件),Android...touch对象代表一个触摸点,触摸点可能是一根手指,也可能是一根触摸笔.触屏事件可相应用户手指(或触控笔),对屏幕或者触控板操作 常见的触屏事件如下: 试着写一下,切换成模拟手机调试 再来试试触摸滑动事件...,targetTouches[0]可以看到第一个手指的一些属性: 网页拖动元素我们已经学会了,手机也能拖动元素,我们现在要学习一下: 但是我们还要注意,触摸滑动是有默认的屏幕滚动的,就是说本来我只想拖动盒子...接下来就是手指滑动轮播图的部分: 移动也做好了,但是我们平常手机里的轮播图的滑动效果并不是这样的,而是当我们滑动很小距离时,图片会回弹回去,滑动的距离大了才会下一张,所以我们要根据moveX...但其实还是有很多bug...比如滑动着就消失了的小圆点,图片滑动到最后返回时还是没衔接上,但是太累了.明天复盘一次

2.6K20

1分钟用 CSS + HTML 实现个按字母吸附滑动列表(类似手机通讯录列表

大家好,今天在浏览 css-tricks.com 这个网站时,看到一个浮动节标题的列表案例,就是简简单单的用 CSS + HTML 实现了一个我们会经常遇到通讯录列表需求(按字母吸附滑动列表),以前实现老麻烦了...dd>Ethiopia 完成后,在浏览器默认的效果如下: 从上图的效果可以看出, 标签在相对 标签的左侧,标签主要是用于定义一个描述列表的项目...标签被用来对一个描述列表中的项目/名字进行描述(可以理解目录里的节)。标签与 和 一起使用。...二、CSS部分 接下来,我们来看看最神奇的CSS部分,主要靠 CSS 实现按节固定滑动,示例代码如下: dt { position: sticky; top: 0; background:...三、美化下案例 你也许会认为这么丑的列表怎么拿的出手,那么我们来美化下列表,完善后的 HTML 和 CSS 部分如下: 3.1 HTML <div

86430

手势魅力-设置一个触摸菜单

序言 本篇为一移动博文,个人觉得这篇外文还可以,就翻译了一下,最终实现的一个效果是:用手势创建一个本地菜单(点击一菜单按钮,实现设置一个触摸侧滑,滑动滑出效果,如下文中的gif图所示),主要涉及的知识点有移动三大触摸事件...(touchstart,touchmove,touchend),触摸属性,以及实现侧边栏动画,在处理移动端点击,拖动,滑动时,是不得要考虑用户的触摸手势,判断手指在页面上到底是点击还是滑动的,利用原生js...的方法封装点击,移动,抬起功能函数,尽管移动(手机)与pc有很多相似之处,但还是有很多要注意的地方的,如果你想获得该Demo的源码,复制该标题后台回复[手势魅力-设置一个触摸菜单]就可以了的,初次翻译...总结 对本文进行总结一下,首先这个效果在我们平日的手机应用里,非常的常见,实现这一效果,主要利用的是移动三大事件touchstart,touchmove,touchend,以及它们的触摸属性,也就是手指在屏幕...DOM中的实际位置,这时,需要考虑手指是水平滑动还是垂直,甚至有时候还得考虑手倾斜的滑动,还要区分是一根手指滑动,还是多根手指滑动,侧边菜单栏动画的实现,以及要注意阻止默认事件,重叠计算等等一些细节 看似简单的效果

1.8K40

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

Vue.js项目中封装轮播图组件 前言 一、了解原生js移动的事件 二、轮播图实战 三、效果图 结束语 前言 今天我在vue.js项目实战开发过程中遇到了实现轮播图效果的问题,因为不想因为一个轮播图而引用整个...公众号:前端印象 不定时有送书活动,记得关注~ 关注后回复对应文字领取:【面试题】、【前端必看电子书】、【数据结构与算法完整代码】、【前端技术交流群】 一、了解原生js移动的事件 原生js移动的事件一共有四种...在每个事件被触发后,会返回一个event参数,event里面包含着三个触摸列表,即: event中的触摸列表 内容 touches 屏幕上所有的手指列表 targetTouches 当前这个DOM中的手指列表...changedTouches 涉及当前事件的手指列表(本实例中尽量用这个) 触摸列表中每个触摸对象(即每个手指)都对应着一些触摸时生成的信息(只写了部分) 触摸信息 含义 clientX / clientY...,轮播图跟着手指滑动的距离移动 slidings(){ //判断是点击还是滑动 if(this.StartPoint === this.EndPoint){return

9.1K20

「移动」touch事件,touchEvent对象

随着智能手机普及,有越来越多的手机网页和网页版游戏,手机触摸、移动、旋转等等,多种操作。一般电脑的人机交互靠的是鼠标,而手机用的就是触摸。...区别有: PC 一个电脑只能有一个鼠标,而移动有多点触摸。...touches - 当前屏幕上的手指触摸 touch 列表。 changedTouches - 触发当前事件的触摸 touch 列表。...单点触发,指的一个指头在屏幕触摸、滑动,主要应用在下拉刷新,手机banner滑动切换等。 注意:如果是单点触摸,但是有多个手指同时触发,此时需要求三个点的平均值作为触摸点。...多点触发:多个手指同时触摸屏幕,进行旋转、缩放、放大、拖拽等操作。 很多情况下,触摸事件跟鼠标事件会同时触发,目的是为了在pc运行的时候,没有触摸设备可以使用鼠标代替。

1.9K20

移动 模拟手机联系人触摸A~Z导航

HTML5学堂:今天要与大家分享一个当前移动很常见的效果,类似于手机联系人的快速导航功能,即当触摸a~z的字母时,能够相对应的显示文字。...有些手机的音乐导航也类似,具体可详见下图: touchmove的问题 在移动,我们可以使用touch事件进行处理,此处首先想到的是使用touchmove事件。...实现触摸a~z导航(模拟手机联系人) 当前能够想到的实现方法有两种(也均测试无误) 第一种方法:手指滑动的时候,判断手指滑动的竖向位置,如果到达相应标签的位置(由于标签是fixed定位模式,因此可以拿到每个标签...使用elementFromPoint实现兼容 <script src="<em>js</em>...,获取到<em>手指</em>的位置,之后根据位置获取当前的目标元素。

1.6K50
领券