在html格式中,我们需要使用箭头键向上或向下移动以在字段中移动焦点。以下代码适用于所有输入元素。但是在textarea的情况下可能有多行,所以如果我们向上或向下移动光标在textarea本身上下移动。
现在,我没有得到如何向上移动焦点,如果光标在向上箭头的同时到达textarea的第一行,或者如果光标到达末尾或最后一个向下移动焦点按下箭头键时,文本区域的线。
这是我的部分代码:
var INPUT_SELECTOR = ':input:enabled:visible';
var inputs = $(INPUT_SELECTOR)
$("form").on("keypress", "input", function(event){
// i is current input
if(event.keyCode === 38){ //action == 'up'
inp = inputs[i > 0 ? parseInt(i) - 1 : inputs.length - 1];
}
if(event.keyCode === 40){ //action == 'down'
inp = inputs[i < inputs.length - 1 ? parseInt(i) + 1 : 0];
}
// focus on the input
moveFocusTo(inp);
});
我们对向上和向下箭头键的要求与tab
和shift+tab
行为相同。一切都完成了,我们刚刚停留在textarea。
答案 0 :(得分:1)
听起来你需要使用 https://developer.mozilla.org/en-US/docs/Web/API/event.relatedTarget#1003983
event.relatedTarget
然后,您可以在活动期间查看用户关注的元素并采取相应的行动。