gpt4 book ai didi

javascript - 在 Chrome 和 Edge 中单击箭头时输入 [type=number] 不断增加

转载 作者:行者123 更新时间:2023-12-04 08:26:11 29 4
gpt4 key购买 nike

我遇到以下问题:加载特定的 jQuery 库后,如果单击数字输入箭头,输入值会不断增加(或减少),直到焦点移到输入元素之外。
绑定(bind) input元素的事件显示它一直在触发,这让我相信一些代码一直在设置 element.value在一个循环中。但那并没有发生。
我已将问题追溯到调用 event.preventDefault()mouseup事件。
看:

document.body.addEventListener('mouseup', (e) => {
e.preventDefault();
});
<input type="number">

为什么会这样?

最佳答案

我无法通过搜索导致这些无限增加的输入的原因来查找信息。
只有在自己找到原因之后,我才发现了一个类似的错误,它阻止了 mousemove 的默认值。 (https://stackoverflow.com/a/37521764/6849064)。虽然,这件事似乎不再发生了。
看起来这是一个 Chrome(和 Edge)错误。但是作为 https://stackoverflow.com/a/65253876/6849064说,这实际上是默认行为,按照他所说的方式是有道理的。我本人未能在任何地方找到这种标准行为。解决问题的一种方法是停止将事件冒泡到文档,

document.querySelector('input').addEventListener('mouseup', (e) => {
e.stopPropagation();
});
另一个是,嗯,不阻止默认行为。

关于javascript - 在 Chrome 和 Edge 中单击箭头时输入 [type=number] 不断增加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65250688/

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