是否可以使用某些js代码“阻止”或“重定向”所有键盘和鼠标滚轮操作?例如,它可能与页面的主体相关。
该想法是“阻止”用户在执行某些js操作期间与页面进行交互。在这些时间间隔内,一个div会出现在整个屏幕上,并在其中心显示一个动画gif。
注意:请尽可能提供一些模型或示例。
更新:执行上述js操作后,“块”或“重定向”将被删除。
答案 0 :(得分:1)
您可以在文档级别监听事件。
[...events].forEach(e => {
document.addEventListener(e, (ev) => {
ev.preventDefault()
...
})
})
但是肯定有代码味道……我怀疑拦截所有事件是否是一个好主意。曾经
答案 1 :(得分:1)
只需使用preventDefault
:
var events = "mousedown mouseup click dblclick mousemove mouseover mouseout mouseenter mouseleave scroll contextmenu keydown keypress keyup";
events.split(" ").forEach(event => document.addEventListener(event, e => e.preventDefault()));
<p>This is some example text. Please ignore it.</p>
尝试在上面的代码段中选择文本,然后取消选择它。