vue-h5:移动Web单击事件和延迟300ms的问题

2023-09-19 00:30:42

在PC端的网页,大部分的交互是通过click事件来实现的,然而在移动端,则是通过touch事件来实现触摸交互。

单击或者点击事件,指的是鼠标按下并且在短时间内放开【一般是小于300ms】。

那么移动端,也是类似,在手指触摸到屏幕开始计算时间,并且在300ms内离开屏幕。这就是移动端的单击事件,手指触摸成为touch。

touch事件

移动端的touch事件,是由屏幕和触点组成。屏幕很好理解;触点是通过皮肤触碰到屏幕产生的【一般是手指】

这样touch事件可以分为:

  1. touchstart:手指接触到屏幕时候触发;
  2. touchmove:手指在屏幕上移动时触发;
  3. touchend:手指从屏幕上离开时触发;
  4. touchcancel:touch被迫取消的时候触发,比如电话或者弹出信息,或者是触点太过,超出了支持的上线就会自动取消触点。

最常用的是touchstart、touchmove和touchend。

当触发touch事件的时候,就会得到一个对象,例如:

  <script>
    document.addEventListener("touchstart", function (event) {
      console.log(event)
    })
  </script>

这个对象如下:
在这里插入图片描述
如上图所示,touches:表示当前页面上左右触摸点;

targetTouches:当前绑定事件的元素上的触点;

changedTouched:刚刚接触手指或者刚刚离开手指的触摸点。

每一个触点是一个对象,有以下几个常用的属性:

  • offsetX/Y:相对于事件源元素,触摸点的位置;
  • pageX/Y:触摸点相对于整个页面的位置;
  • clientX/Y:触摸点相对于浏览器可视区的位置;

在这里插入图片描述

单击延迟

手机上的网页,双击是可以将页面放大,提升了用户浏览器网页的体验, 但是双击,是包含了两次单击。

一次单击,系统需要大概300毫秒的时间来判断是否第二次点击,如果有,就是完成一次双击。所以只要是点击,都要经过判断是否是双击的逻辑,导致需要等待300ms后才能收到单击事件的反馈。

处理300ms延迟的方法是设置:禁止用户进行缩放user-scalable=no。

更多推荐

第五天:基于gec6818开发板或stm32驱动对RFID高频读卡器进行防碰撞获取卡号,读取,写入内容操作

在ARM板上通过防碰撞指令获取高频RFID卡的卡号高频RFID一般频率在13.56MHz左右,识别距离可扩展至1.5米,具有防碰撞特性,可以同时读取多个电子标签。标签可以存储少量数据,多用于需要存储数据、近距离的识别应用,如:图书馆管理系统、场地通道安全管理系统等。mifare522模块的数据帧格式gec6818开发板

[C++ 网络协议] I/O流分离所带来的半关闭问题

1.问题和解决方法根据所学内容,I/O流分离现如今有如下2种方法:1.调用进程fork函数,分离出子进程,主进程和子进程分别进行输入流的读和输出流的写。2.用FILE指针按读模式和写模式将输入流和输出流进行区分。第一种方法,可以对输出流调用shutdown函数进行半关闭,从而不会影响到输入流接收客户端的数据,这是没问题

从理解js双重递归执行顺序到用递归方式实现二叉树中序遍历

今天在学习力扣上94题二叉树的中序遍历时,js的实现方法之一是递归,但是函数内递归是双重,花了一些时间来理解双重递归调用的执行顺序。先看如下例子,参考文章(双递归的执行过程理解)示例代码如下:constfn=(n)=>{if(n>0){console.log('n1====',n)fn(n-1)console.log(

微软AIGC in a Day-探索人工智能与行业应用实践沙龙-参后感

先来看下宣传海报活动介绍总结活动主题:探索人工智能与行业应用实践沙龙微软PowerPlatform携手GPT,从应用层面深入AI+低代码开发,一场探索人工智能与行业应用实践的技术盛宴即将到来!9月16日,「探索人工智能与行业应用实践沙龙」,数位来自AI、低代码领域的技术专家,将通过**技术分享、案例实操等形式,带来AI

美国调查公司 Digital Discovery 利用OpenText Encase 调查取证工具发现隐藏在数据中的事实

美国调查公司依靠OpenTextEnCase来分析数据挑战备受瞩目的复杂案件需要全面的取证解决方案;需要快速确定关键文档和证据的优先级;需要最新的支持来访问隐藏在多个来源和格式中的数据。结果为客户提供强大的取证调查解决方案;加速可辩护证据收集和分析;确保为最广泛的设备、格式和系统提供最新支持。故事DigitalDisc

2024字节跳动校招面试真题汇总及其解答(五)

17.TCP的拥塞控制TCP的拥塞控制是指在TCP连接中,发送端和接收端通过协作来控制网络中数据包的流量,避免网络拥塞。TCP的拥塞控制是TCP协议的重要组成部分,它可以确保TCP连接的稳定性和可靠性。TCP的拥塞控制主要有以下几个目的:防止网络拥塞:当网络中的数据包流量过大时,会导致网络拥塞,从而导致数据包丢失、延迟

共用体与枚举类型

9.7共用体9.7.1引例【例10.1】高校学生的课程设置中,有些课程是必修课,有些是选修课程,各门课程的考核方式不同,必修课采用百分制,选修课可以采用百分制和五级制(如'A'、'B'、'C'、'D'、'E')两种。学生在完成学校规定的课程的同时,可以根据需要选择自己感兴趣的一些课程。假设某个学期有三门选修课程:统计学

ESP32-IDF使用I2S驱动MAX98375--解析WAV文件

一.简介本篇文章将介绍如何使用ESP32S3通过I2S发送WAV音频数据,驱动MAX98375A进行音频的播放。是EVE_V2项目开发的一部分工作。二.MAX98375A介绍芯片特性如下,可以在芯片手册上找到。单电源工作(2.5V至5.5V)3.2W输出功率:4Ω,5V2.4mA静态电流92%效率(RL=8Ω,POUT

商家收款一万手续费多少

目前微信和支付宝作为主流的支付平台,为商家提供了安全、便捷的支付解决方案。但是在正常情况下,商家需要向平台支付交易额0.6%至1%不等的手续费,这个费率看似很少,但长期积累下来的手续费支出也是一笔不小的开支。什么是收款手续费率?收款手续费率是指的是我们商家在用收款码收款的时候,每次收款都会被微信或者支付宝扣一笔费用,这

Linux日志管理-logrotate(crontab定时任务、Ceph日志转储)

文章目录一、logrotate概述二、logrotate基本用法三、logrotate运行机制logrotate参数四、logrotate是怎么做到滚动日志时不影响程序正常的日志输出呢?Linux文件操作机制方案一方案二五、logrotate实战--Ceph日志转储参考一、logrotate概述logrotate是一个

盛元广通农业种子检测实验室信息化管理系统LIMS

农业问题以及粮食安全关系着我们的基本民生,尤其是随着农业科技的发展,借助现代化实验室管理系统,在种子质量检验中能让实验室检验实现自动化运行,实现无纸化和信息化办公,让数据分析得到科学完整的管理,减少运行成本。盛元广通农业种子检测实验室信息化管理系统LIMS结合工作实际流程制作,从种子采购、种子入库、种子库存、更新提醒、

热文推荐