gpt4 book ai didi

javascript - 如何防止多次单击/点击的默认处理?

转载 作者:行者123 更新时间:2023-11-28 03:50:35 25 4
gpt4 key购买 nike

我正在开发一个用于音乐制作的简单网络工具。用户用鼠标重复单击某个区域或用手指点击(在触摸屏上),该工具会计算点击的平均节奏(例如 160bpm)。就我而言,该区域是一个 output HTML 元素,但它也可能是任何其他元素。

由于单击或点击可能非常频繁地发生,因此设备不会将其感知为常规点击,而是双击或双击。第一种情况,该区域的内容被选中,因为这是双击的默认结果;在第二种情况下,网页会缩放(例如在 iOS 中),而不是捕获点击。

如何防止桌面和触摸屏出现不良行为?一些重要的要求:

  1. 我寻找一种使用纯 JavaScript 和 native 浏览器 API 的解决方案,无需 jQuery 或其他框架。

  2. 该解决方案应防止仅在上述元素中进行额外点击。如果用户在此元素之外的网页上的其他位置执行多次点击(或多次点击),则应照常处理。

最佳答案

要防止双击时选择:

function clearSelection() {
if(document.selection && document.selection.empty) {
document.selection.empty();
} else if(window.getSelection) {
var sel = window.getSelection();
sel.removeAllRanges();
}
}

示例来自:Prevent text selection after double click

要防止在移动设备上缩放,请包含元标记:

<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />

注意:只有使用响应式设计,这才是可行的解决方案

关于javascript - 如何防止多次单击/点击的默认处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48025558/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com