gpt4 book ai didi

javascript - 按键,但当输入或文本区域处于焦点时不按键

转载 作者:行者123 更新时间:2023-11-28 12:17:56 29 4
gpt4 key购买 nike

我正在使用下面的代码:

$(document).keypress(function (e) {
if (e.which === 68 || e.which === 100) {
doStuff();
}
});

我想要的是捕获“D”键作为我页面中某个功能的快捷方式。问题是,此页面有输入和文本区域控件,当我在此控件上键入时,会调用“doStuff()”函数。

如何避免?仅当用户未在可编辑控件中键入任何内容时,我才希望捕获“D”键。

谢谢!

最佳答案

除了e.target之外,您还可以测试当前事件元素是输入还是文本区域:

$(document).keypress(function (e) {
var focussedTag = document.activeElement && document.activeElement.nodeName;
if( focussedTag === 'INPUT' || focussedTag === 'TEXTAREA' ) {
return;
}
if (e.which === 68 || e.which === 100) {
doStuff();
}
} );

fiddle :https://jsfiddle.net/e1qtapo6/

关于javascript - 按键,但当输入或文本区域处于焦点时不按键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44905978/

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