Javascript 从textarea jquery按向上键向上移动

Javascript 从textarea jquery按向上键向上移动,javascript,jquery,html,Javascript,Jquery,Html,在html表单中,我们需要使用箭头键来上下移动字段中的焦点。以下代码适用于所有输入元素。但在textarea的情况下,可能会有多行,所以,如果我们向上或向下移动,光标会在textarea本身向上或向下移动 现在,我不知道如何向上移动焦点,如果光标在按下向上箭头时到达文本区域的第一行,或者如果光标在按下向下箭头键时到达文本区域的末尾或最后一行,如何向下移动焦点。 这是我的部分代码: var INPUT_SELECTOR = ':input:enabled:visible'; var inputs

在html表单中,我们需要使用箭头键来上下移动字段中的焦点。以下代码适用于所有输入元素。但在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);
});
var输入_选择器=':输入:已启用:可见';
变量输入=$(输入选择器)
$(“形式”)。在(“按键”、“输入”功能(事件)上{
//i是电流输入
如果(event.keyCode==38){//action=='up'
inp=输入[i>0?parseInt(i)-1:inputs.length-1];
}
如果(event.keyCode==40){//action==down'
inp=输入[i

我们对上下箭头键的要求与
tab
shift+tab
行为相同。一切都完成了,我们只是停留在文本区。

听起来你需要使用


然后,您可以在事件期间查看用户关注的元素并采取相应的行动。

可能需要将textare添加到上的
$(“表单”)。上的(“按键”,“输入,textarea”,函数(事件){
@lolka\u bolka:我想知道输入是否也考虑textarea!
event.relatedTarget