当前位置: 首页 > news >正文

【JavaScript】点击穿透

点击穿透是指在某些场景下,⽤户在快速点击⻚⾯元素时,由于某些原因(例如⽹络延迟),
在前⼀个元素上的点击事件还没有完成时,下⼀个元素的点击事件就已经触发了,导致⽤户感
觉到⻚⾯点击⽆效或者出现异常。

解决点击穿透的⽅法有以下⼏种:

  1. 使⽤ debounce 或 throttle 函数。 这两种函数可以控制函数的执⾏频率,减少短时间内函
    数的执⾏次数,从⽽减少点击穿透的可能性。
  2. 使⽤ CSS pointer-events 属性。将当前元素的 pointer-events 属性设为 none,可以禁⽤
    当前元素的⿏标事件,从⽽避免在事件处理函数执⾏过程中发⽣点击穿透。
  3. 使⽤ touch 事件代替 click 事件。 在移动设备上,click 事件有300ms的延迟,可能会导致
    点击穿透。使⽤ touchstart、touchend 等 touch 事件可以避免这个问题。
  4. 在 click 事件中使⽤ preventDefault 函数。在 click 事件的处理函数中调⽤ preventDefault
    函数,可以阻⽌默认的事件⾏为,从⽽避免点击穿透。但是这种⽅法有可能会影响到⼀些
    ⽤户习惯,因此需要慎⽤。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 爬虫学习4:爬取王者荣耀技能信息
  • 高翔【自动驾驶与机器人中的SLAM技术】学习笔记(二)——带着问题的学习;一刷感受;环境搭建
  • 前端切片下载
  • react开发-配置开发时候@指向SRC目录
  • 微服务概念篇-服务提供者/服务消费者
  • 案例研究|柯尼卡美能达软件开发(大连)有限公司基于DataEase构筑内部数据可视化体系
  • react中配置路径别名@
  • 使用docker部署后端项目后,拿不到linux中的文件
  • 【python】Numpy中的ValueError: setting an array element with a sequence报错分析及解决方案
  • 逻辑漏洞面试问题
  • C语言之2048小游戏理解分析
  • 最优化原理(笔记)
  • MINE:Mutual Information Neural Estimation
  • 【学习笔记】无人机系统(UAS)的连接、识别和跟踪(七)-广播远程识别码(Broadcast Remote ID)
  • Nova Admin - 简洁干净、免费开源的后台管理系统,基于Vue3 / Vite5 / Typescript / Naive UI 等前端开发技术栈
  • android百种动画侧滑库、步骤视图、TextView效果、社交、搜房、K线图等源码
  • C学习-枚举(九)
  • Java基本数据类型之Number
  • JS实现简单的MVC模式开发小游戏
  • PHP那些事儿
  • Promise初体验
  • Spring Cloud(3) - 服务治理: Spring Cloud Eureka
  • Swoft 源码剖析 - 代码自动更新机制
  • yii2中session跨域名的问题
  • 京东美团研发面经
  • 利用jquery编写加法运算验证码
  • 腾讯视频格式如何转换成mp4 将下载的qlv文件转换成mp4的方法
  • 通过几道题目学习二叉搜索树
  • 我有几个粽子,和一个故事
  • 一个项目push到多个远程Git仓库
  • 一些关于Rust在2019年的思考
  • Spring Batch JSON 支持
  • ​软考-高级-系统架构设计师教程(清华第2版)【第20章 系统架构设计师论文写作要点(P717~728)-思维导图】​
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • # 数论-逆元
  • #define
  • #Linux(权限管理)
  • #Spring-boot高级
  • ${ }的特别功能
  • (1)安装hadoop之虚拟机准备(配置IP与主机名)
  • (C)一些题4
  • (C语言)深入理解指针2之野指针与传值与传址与assert断言
  • (C语言)输入自定义个数的整数,打印出最大值和最小值
  • (javascript)再说document.body.scrollTop的使用问题
  • (NO.00004)iOS实现打砖块游戏(十二):伸缩自如,我是如意金箍棒(上)!
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (二)斐波那契Fabonacci函数
  • (利用IDEA+Maven)定制属于自己的jar包
  • (算法二)滑动窗口
  • (转)Android学习笔记 --- android任务栈和启动模式
  • (转)jdk与jre的区别
  • (转)大型网站架构演变和知识体系
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .mysql secret在哪_MYSQL基本操作(上)