Js 功能-理解滑动手势事件 |学习笔记

简介: 快速学习 Js 功能-理解滑动手势事件

开发者学堂课程【移动 Web 前端开发:Js 功能-理解滑动手势事件】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/594/detail/8425


Js 功能-理解滑动手势事件

内容介绍

一、滑动效果分析

二、滑动逻辑

三、代码设置


一、滑动效果分析

1、滑动效果是如何实现的

2、理解手势事件

从当前轮播图看,可以理解到移动端常见的滑动是如何实现的,也就是 tap 事件加上位移。

依靠  touch 相关事件,根据触摸位置的改变,改变对应元素的位移 translate

 

二、滑动逻辑

1.无缝滚动&无缝滑动(定时器过渡位移)

2.点盒子对应改变(改变当前样式)

3.可以滑动( touch 事件监听触摸点坐标改变距离位移)

4.当滑动距离不够的时候吸附回去(过渡位移)

5.当滑动距离够了的时候,跳转上一张下一张(判断方向过渡位移)

 

三、代码设置

1、滑动效果是如何实现的:

/*滑动*/

/*基于当前的位置*/

/*计算将要去做定位*/

var translate X = -index*width +distance X;

/*清除过渡*/

remove Transition();

/*做定位*/

set Translate x(translate x);

2、理解手势事件:

中心点往右滑动超过50,可以理解成向右滑,中心点往左滑超过50,可以理解成向左滑;中心点往上滑超过50,可以理解成向上滑,同上,中心点往下滑超过50,可以理解成向下滑。

<! DOCTYPE html>

<html>

<head lang="en">

<meta charset="UTF-8">

<meta name="viewport"content="width=device-width,user-scalable=no,initial-scale=1.0,maximum-scale=1.0,

(1)title 理解手势事件

</title>

<style>

body{

margin: o;

padding: o;

}

div{

width: 100%;

height: 200px;

background: red;

}

</style></ head><body>

<div></div><script>

Window .onload = function() {

var dom = document .query selector( 'div');

/绑定事件组/

(2)手势事件的条件:

/必须滑动过/

/滑动的距离超过50px/

(3)衍生出左滑和右滑手势事件

var start x = o;

var distance x = 0

var is Move = false;

dom .add Event Listener( 'touch s tant ' ,function(e){

star tx = e. touches[o].clientx;

});

dom. Add Event Listener( 'touch moxe ' ,function(e){

var move x = e .touches[o].client x;

dis tance x = move x – start x;

is Move = true;

});

dom. Add Event Listener( "touch end" ,function(e){

if( is Move && Math .abs (dis tancex) >= 50){

if(dis tancex >O){

console.log('右滑事件')

}

else{

console. log('左滑事件')

}

(重置参数,因为移动一点是不算滑动的)

Start x = o;

Distance x = 0

Is Move = false

相关文章
|
27天前
|
JavaScript 前端开发
JavaScript 事件
JavaScript 事件
29 2
|
6天前
|
JavaScript 前端开发 API
Vue学习笔记3:对比纯JavaScript和Vue实现数据更新的实时视图显示
Vue学习笔记3:对比纯JavaScript和Vue实现数据更新的实时视图显示
|
9天前
|
JavaScript 前端开发
JavaScript HTML DOM 事件
JavaScript HTML DOM 事件
14 5
|
9天前
|
监控 JavaScript 前端开发
|
26天前
|
Web App开发 前端开发 JavaScript
HTML/CSS/JS学习笔记 Day3(HTML--网页标签 下)
HTML/CSS/JS学习笔记 Day3(HTML--网页标签 下)
|
26天前
Nest.js 实战 (十二):优雅地使用事件发布/订阅模块 Event Emitter
这篇文章介绍了在Nest.js构建应用时,如何通过事件/发布-订阅模式使应用程序更健壮、灵活、易于扩展,并简化服务间通信。文章主要围绕@nestjs/event-emitter模块展开,这是一个基于eventemitter2库的社区模块,提供了事件发布/订阅功能,使得实现事件驱动架构变得简单。文章还介绍了如何使用该模块,包括安装依赖、初始化模块、注册EventEmitterModule、使用装饰器简化监听等。最后总结,集成@nestjs/event-emitter模块可以提升应用程序的事件驱动能力,构建出更为松耦合、易扩展且高度灵活的系统架构,是构建现代、响应迅速且具有高度解耦特性的Nest.
用html+javascript打造公文一键排版系统14:为半角和全角字符相互转换功能增加英文字母、阿拉伯数字、标点符号、空格选项
用html+javascript打造公文一键排版系统14:为半角和全角字符相互转换功能增加英文字母、阿拉伯数字、标点符号、空格选项
|
6天前
|
存储 文字识别 前端开发
用html+javascript打造公文一键排版系统13:增加半角字符和全角字符的相互转换功能
用html+javascript打造公文一键排版系统13:增加半角字符和全角字符的相互转换功能
|
22天前
|
JavaScript 前端开发
|
2月前
|
开发者 Android开发 iOS开发
Xamarin开发者的神器!揭秘你绝不能错过的插件和工具,让你的开发效率飞跃式提升
【8月更文挑战第31天】Xamarin.Forms 是一个强大的框架,让开发者通过单一共享代码库构建跨平台移动应用,支持 iOS、Android 和 Windows。使用 C# 和 XAML,它简化了多平台开发流程,保持一致的用户体验。本指南通过创建一个简单的 “HelloXamarin” 应用介绍 Xamarin.Forms 的基本功能和工作原理。首先配置 Visual Studio 开发环境,然后创建并运行一个包含标题、按钮和消息标签的示例应用,展示如何定义界面布局及处理按钮点击事件。这帮助开发者快速入门 Xamarin.Forms,提高跨平台应用开发效率。
33 0