Javascript - 使用带Tab键和焦点函数的EventListener

时间:2017-08-22 16:56:47

标签: javascript

我一直在搜索,但没有找到解决我问题的特定线程。

我正在尝试使用JavaScript编写事件监听器或条件操作,当用户选择TAB键并将焦点转移到屏幕上的相应元素时,它会作出反应。

当前DIV ID专注于屏幕=> ID =" Slide14549accStr2" 当用户选择TAB键时,我希望用户的焦点立即转移到DIV id" Titleinformation_tb"。我无法更改HTML中的TabIndex以正常方式执行此操作,因此我只能使用某种形式的javascript。

这是我到目前为止所拥有的。

document.getElementById('Slide14549accStr2').addEventListener('keydown') {
  if event.keyCode == 9) {
  var elem =
    document.getElementById('Titleinformation_tb');
  $(elem).focus();
};

我将不胜感激任何帮助和反馈。

2 个答案:

答案 0 :(得分:1)

如果您只修复了所有语法错误,它可以正常工作,但您也应该阻止默认操作,以确保它不会标记到下一个元素



document.getElementById('Slide14549accStr2').addEventListener('keydown', function(event) {
  if (event.keyCode == 9) {
    event.preventDefault();
    var elem = document.getElementById('Titleinformation_tb');
    elem.focus();
  }
});

<input id="Slide14549accStr2" placeholder="Focus this, and tab out">
<br><br><br>
<input><input><input>
<br><br><br>
<input id="Titleinformation_tb" placeholder="Should go here">
&#13;
&#13;
&#13;

答案 1 :(得分:0)

你错过了函数调用。

document.getElementById('Slide14549accStr2')
.addEventListener('keydown',function(e){
 if (event.keyCode == 9){
    var elem = document.getElementById('Titleinformation_tb');
  $(elem).focus();
 }
});