开发者社区 问答 正文

移动端的点击事件的有延迟,时间是多久,为什么会有? 怎么解决这个延时?

移动端的点击事件的有延迟,时间是多久,为什么会有? 怎么解决这个延时?

展开
收起
请回答1024 2020-04-04 10:47:06 1413 分享 版权
1 条回答
写回答
取消 提交回答
  • 移动端点击有 300ms 的延迟是因为移动端会有双击缩放的这个操作,因此浏览器在 click 之后要等待 300ms,看用户有没有下一次点击,来判断这次操作是不是双击。 有三种办法来解决这个问题:

    • 1.通过 meta 标签禁用网页的缩放。
    • 2.通过 meta 标签将网页的 viewport 设置为 ideal viewport。
    • 3.调用一些 js 库,比如 FastClick

    click 延时问题还可能引起点击穿透的问题,就是如果我们在一个元素上注册了 touchStart 的监听事件,这个事件会将这个元素隐藏掉,我们发现当这个元素隐藏后,触发了这个元素下的一个元素的点击事件,这就是点击穿透。

    2020-04-04 10:47:23
    赞同 展开评论
问答地址: