Javascript 使用文本区域时禁用键盘事件
我的网站是通过按下键盘上的按钮来导航的:输入、\、+、-,等等。。。我的问题是我有文本区域,当我按下这些按钮时,如果选择了文本区域,打字和按钮同时工作 我认为解决这个问题的最好方法是使用某种布尔运算。我尝试使用Javascript 使用文本区域时禁用键盘事件,javascript,html,textarea,Javascript,Html,Textarea,我的网站是通过按下键盘上的按钮来导航的:输入、\、+、-,等等。。。我的问题是我有文本区域,当我按下这些按钮时,如果选择了文本区域,打字和按钮同时工作 我认为解决这个问题的最好方法是使用某种布尔运算。我尝试使用if(!x.hasFocus()){allow buttons to use},但此布尔值仅适用于整个文档,而不适用于特定的文本区域 那么,如何仅在用户当前正在访问textArea时禁用键盘按键的事件侦听器呢 我希望用户在使用textArea时能够使用enter、\、+,-键,但一旦tex
if(!x.hasFocus()){allow buttons to use}
,但此布尔值仅适用于整个文档,而不适用于特定的文本区域
那么,如何仅在用户当前正在访问textArea时禁用键盘按键的事件侦听器呢
我希望用户在使用textArea时能够使用enter、\、+,-键,但一旦textArea未被使用,这些按钮就应该执行某些功能,我正在使用addEventListener(“keyup”,function(){…}) document.addEventListener(“键控”,函数(事件){
var分型;
如果(document.activeElement.tagName==“TEXTAREA”){
输入=真;
}else{typing=false;}
if(document.getElementById(“body”).style.display==“block”&&
document.getElementById(“中间”).style.display==“无”){
if(计数器
您可能需要查看。使用的方式可以使事件在到达textArea元素时停止冒泡。我意识到我可以在检查document.activeElement.tagNames==“textArea”时使用if语句
document.addEventListener("keyup", function(event){
var typing;
if(document.activeElement.tagName === "TEXTAREA"){
typing = true;
} else{typing = false;}
if(document.getElementById("body").style.display === "block" &&
document.getElementById("middle").style.display === "none"){
if(counter < divs.length && event.keyCode === 187 && !typing){
//do things
}
}