Javascript 如何防止谷歌搜索自动聚焦于按键?
我正在为自己做扩展,我想禁用自动对焦,或者至少在对焦之前运行我的函数 我尝试过针对这些事件:Javascript 如何防止谷歌搜索自动聚焦于按键?,javascript,html,dom,Javascript,Html,Dom,我正在为自己做扩展,我想禁用自动对焦,或者至少在对焦之前运行我的函数 我尝试过针对这些事件:keypress、keyup、keydown、在window和document上输入。并使用以下命令停止事件: document.addEventListener('keypress', stopEvent); document.addEventListener('keyup', stopEvent); document.addEventListener('keydown', stopEvent);
keypress、keyup、keydown、在window
和document
上输入。并使用以下命令停止事件:
document.addEventListener('keypress', stopEvent);
document.addEventListener('keyup', stopEvent);
document.addEventListener('keydown', stopEvent);
document.addEventListener('input', stopEvent);
document.body.addEventListener('keypress', stopEvent);
document.body.addEventListener('keyup', stopEvent);
document.body.addEventListener('keydown', stopEvent);
document.body.addEventListener('input', stopEvent);
window.addEventListener('keypress', stopEvent);
window.addEventListener('keyup', stopEvent);
window.addEventListener('keydown', stopEvent);
window.addEventListener('input', stopEvent);
function stopEvent(e) {
e.stopImmediatePropagation();
e.stopPropagation();
e.preventDefault()
return false;
}
但不知何故,搜索的输入框仍然被选中,我是否需要以某种方式删除所有事件处理程序?我找到了,这是第三个参数
useCapture
做了一些有氧运动后,我花了2分钟来解决这个问题
function stopEvent(e) {
e.stopImmediatePropagation();
//e.stopPropagation();
//e.preventDefault()
//return false;
}
//var eles = [window, document, document.body];
var eles = [window];
eles.forEach(function(ele){
ele.addEventListener('keypress',stopEvent,true);
ele.addEventListener('keyup',stopEvent,true);
ele.addEventListener('keydown',stopEvent,true);
ele.addEventListener('input',stopEvent,true);
});
我算出来了,这是第三个参数
useCapture
做了一些有氧运动后,我花了2分钟来解决这个问题
function stopEvent(e) {
e.stopImmediatePropagation();
//e.stopPropagation();
//e.preventDefault()
//return false;
}
//var eles = [window, document, document.body];
var eles = [window];
eles.forEach(function(ele){
ele.addEventListener('keypress',stopEvent,true);
ele.addEventListener('keyup',stopEvent,true);
ele.addEventListener('keydown',stopEvent,true);
ele.addEventListener('input',stopEvent,true);
});