当页面加载以下内容时,我正在停用左右箭头键:
$(document).keydown(function(event) {
switch(event.keyCode){
case 37:
case 39:
return false;
break;
}
});
我想在 textarea 或输入字段 id onfocus 时重新激活它们,并在该元素不再处于焦点时再次停用它们。你会怎么做?
你可以检查一下event.target
。
$(document).keydown(function(event) {
if (event.target instanceof HTMLInputElement
|| event.target instanceof HTMLTextAreaElement) {
return true;
}
switch(event.keyCode){
case 37:
case 39:
return false;
break;
}
});
这应该可行..但出于可访问性的原因,您真的不应该这样做。
var blockKeys = true; //Set this to true or false as needed
$(document).keydown(function(event) {
switch(event.keyCode){
case 37:
case 39:
if(blockKeys === true) {
event.PreventDefault();
}
break;
}
});
试试这个作为你在开关盒中返回的条件
if(event.target.tagName != "INPUT" && event.target.tagName != "TEXTAREA" )
{
return false;
break;
}