在 Chrome v.25 中,我使用此代码来避免在拖动 HTML 元素时出现文本光标:
document.addEventListener("mousemove",function(e) { e.returnValue = false; });
每个<input type="number"/>
都是残废的(见jsfiddle)
我已经设法通过仅在拖动时设置错误的 returnValue 来避免这种情况。但是这里到底发生了什么?它是错误还是某些功能?
在 Chrome v.25 中,我使用此代码来避免在拖动 HTML 元素时出现文本光标:
document.addEventListener("mousemove",function(e) { e.returnValue = false; });
每个<input type="number"/>
都是残废的(见jsfiddle)
我已经设法通过仅在拖动时设置错误的 returnValue 来避免这种情况。但是这里到底发生了什么?它是错误还是某些功能?
如果我正确理解您的意思,您可以使用 CSS 实现此目的...
.no-select {
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
只需将其添加到您不想选择的元素中即可。
这看起来确实是一个字符串问题,因为我不会将按下数字输入称为 mousemove 事件,但无论如何,问题都存在。CSS 可能是一个更优雅的解决方案。
在这里检查小提琴: