从textarea jquery按UP键向上移动

时间:2014-11-06 12:30:08

标签: javascript jquery html

在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);
});

我们对向上和向下箭头键的要求与tabshift+tab行为相同。一切都完成了,我们刚刚停留在textarea。

1 个答案:

答案 0 :(得分:1)

听起来你需要使用 https://developer.mozilla.org/en-US/docs/Web/API/event.relatedTarget#1003983

event.relatedTarget 

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