tap事件

tap事件,也是轻击、轻触事件,其特点是响应速度快,在移动端也有click事件 (在移动为了区分是滑动还是点击,click点击延时300ms),可这样影响用户体验, 响应太慢了。为了解决这个问题,引入了tap事件

原理

    <!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport"content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><title>Title</title><style>body {margin: 0;padding: 0;}.box {width: 200px;height: 200px;background: pink;float: left;}</style></head><body><div class="box"></div><script>window.onload = function () {/*使用tap事件*//*1. 响应的速度比click要快   150ms *//*2. 不能滑动*/// 封装tap事件var bindTapEvent = function (dom, callback) {/*事件的执行顺序*//*在谷歌浏览器模拟看不到300ms的效果*//*在真机上面才能看看到延时效果*/var startTime = 0;var isMove = false;dom.addEventListener('touchstart', function () {startTime = Date.now();});dom.addEventListener('touchmove', function () {isMove = true;});dom.addEventListener('touchend', function (e) {console.log((Date.now() - startTime));if ((Date.now() - startTime) < 150 && !isMove) {callback && callback.call(this, e);}// 重置参数startTime = 0;isMove = false;});}bindTapEvent(document.querySelector('.box'), function (e) {console.log(this);console.log(e);console.log('tap事件')});}</script></body></html>

fastclick

fastclick的思路就是利用touch来模拟tap(触碰),如果认为是一次有效的tap,则在touchend时立即模拟一个click事件,分发到事件源(相当于主动触发一次click),同时阻止掉浏览器300ms后产生的click。

总的来说就是提供移动端click响应速度的

下载

fastclick

使用

        <script src="../js/fastclick.min.js"></script><script>/*当页面的dom元素加载完成*/document.addEventListener('DOMContentLoaded', function () {/*初始化方法*/FastClick.attach(document.body);}, false);/*正常使用click事件就可以了*/</script>

移动端的tap事件你知道多少相关推荐

  1. JavaScript 移动端的tap事件

    一.移动端的 tap 事件 移动端的单击事件,我们称为 tap 事件,也就是由手指单击所触发的事件. 二.单击事件的特征 单击事件的话,我们的 changedTouches.length = 1,即: ...

  2. 移动端click延迟和tap事件

    一.click等事件在移动端的延迟 click事件在移动端和pc端均可以触发,但是在移动端有延迟现象. 1.背景 由于早期移动设备浏览网页时内容较小,为了增强用户体验,苹果公司专门为移动设备设计了双击 ...

  3. 移动端的touch事件详解

    移动端的touch事件 触摸事件的起源 随着智能手机和平板电脑的普及, 越来越多的人用移动设备浏览网页,我们平时在pc浏览器上用的鼠标事件,比如:click, mouseover等, 已经无法满足移动 ...

  4. 移动端为何不使用click而模拟tap事件及解决方案

    移动端为何不使用click而模拟tap事件及解决方案 参考文章: (1)移动端为何不使用click而模拟tap事件及解决方案 (2)https://www.cnblogs.com/ranyonsue/ ...

  5. fastclick.js移动端WEB开发,click,touch,tap事件浅析

    建议看看:http://www.cnblogs.com/yexiaochai/p/3442220.html 一.click 和 tap 比较 两者都会在点击时触发,但是在手机WEB端,click会有 ...

  6. 移动端WEB开发,click,touch,tap事件浅析

    2019独角兽企业重金招聘Python工程师标准>>> 一.click 和 tap 比较 两者都会在点击时触发,但是在手机WEB端,click会有 200~300 ms,所以请用ta ...

  7. HTML5触摸事件演化tap事件

    触摸事件是移动浏览器特有的HTML5事件,虽然click事件在pc和移动端更通用,但是在移动端会出现300ms延迟,较为影响用户体验,300ms延迟来自判断双击和长按,因为只有默认等待时间结束以确定没 ...

  8. 4. js移动端点触(tap)事件

    移动端本身就有click事件,但是该事件在touch事件之后发生,延迟时间为300ms,影响用户体验 tap事件(不是移动端原生事件,通过touch相关事件衍生过来) 使用tap事件,响应的速度比cl ...

  9. 手机html5 tap事件,HTML5触摸事件演化tap事件介绍

    触摸事件是移动浏览器特有的HTML5事件,虽然click事件在pc和移动端更通用,但是在移动端会出现300ms延迟,较为影响用户体验,300ms延迟来自判断双击和长按,因为只有默认等待时间结束以确定没 ...

最新文章

  1. add-apt-repository命令详解_Dcr_Hs的博客-CSDN博客_add-apt-repository
  2. 3、 PPT合并形状
  3. Winform中自定义添加ZedGraph右键实现设置所有Y轴刻度的上下限
  4. 判断页面在手机和pc打开的方法
  5. java 制作 winrar,Java使用winrar解压缩
  6. 大学期末考试综合实训试题一
  7. 2021 年前端趋势预测
  8. Android 6.0 源代码编译实践
  9. 1. JavaScript学习笔记——JS基础
  10. 请求方报超时,服务日志中记录的时间却少有超时
  11. VS2013/2012 下无法打开 源 文件“stdafx.h”的解决方法
  12. 基于SGIP协议编写短信网关接口
  13. 《Linux 设备驱动开发详解(第2版)》——1.4 Linux设备驱动
  14. python 面向对象的封装_Python面向对象封装操作案例详解
  15. 计算机金融专业课程方案,《计算机在金融业中的应用》教学实施方案
  16. 【撸码师的备忘录】JedisPool.returnResource()遭弃用
  17. iOS-常用宏定义大全
  18. Linux串口调试工具
  19. 工作中使用BBM:消费者的“闺蜜”级顾问 凯特周智囊团
  20. 【Java设计模式 经典设计原则】 八 经典设计原则小结

热门文章

  1. 两代人拼13年购商品房 房产证认人不认钱
  2. 数据化风控与催收人员策略管理
  3. 在线教育培训APP开发,在线教育培训APP开发介绍
  4. dw中html5开发如何数据库,DW如何连接数据库?
  5. 相识python 之小数据池 集合
  6. 视觉机器学习20讲-MATLAB源码示例(6)-贝叶斯学习算法
  7. 关闭iTunes的强制自动文件备份 -(电脑空间不足,无法升级iPhone)
  8. rosrun和roslaunch命令比较
  9. docker的安装和卸载
  10. JVS低代码能力简介及功能清单