如何确保注册所有移动键盘的ENTER键按下事件?

时间:2019-10-20 21:26:15

标签: javascript android browser web-applications cross-platform

我正在尝试使Web表单非常适合移动使用。因此,我使用Enter keydown事件将表单选项卡移至下一个输入(它实际上不是表单,而是一系列输入,然后是一个提交按钮功能调用)。这适用于我的Mac在Safari和iOS上在Firefox和Safari中。但是,在我的android上进行测试时,我发现该事件未在chrome中触发。

这是我用来注册Enter键输入的代码:

document.addEventListener('keyup', function (event) {
    if (event.keyCode === 13 && event.target.nodeName === 'INPUT') {
      var inputs = document.querySelectorAll('.formInput')
      console.log(inputs)
      let inputsAndSubmit = [...inputs, document.getElementById('newContactSubmit')]
       var index = Array.prototype.indexOf.call(inputsAndSubmit, event.target);
       inputsAndSubmit[index + 1].focus();
       event.preventDefault();
    }
  });

0 个答案:

没有答案