keyboard events 如何用tab键选中feedback

目前网站有feedback 这个button,但键盘用户用tap键选中不了这个feedback 请问这个如何弄呢

img

img

键盘事件内部在绑定一个按钮事件,需要把键码改一下,tab的键码9

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      .red {
        color: red;
      }
    </style>
  </head>
  <body>
    <div id="feedback" onclick="fn()">feedback</div>
    <script>
      document.onkeydown = function (event) {
        var e = event || window.event || arguments.callee.caller.arguments[0];
        if (e && e.keyCode == 9) {
          // Tab 键
          document.getElementById("feedback").setAttribute("class", "red");
          document.getElementById("feedback").click();
        }
      };

      function fn() {
        alert("点击了feedback");
      }
    </script>
  </body>
</html>

如果你想通过tab触发button事件可以用上面两位的
如果只是用tab让button获得焦点用tabindex
https://juejin.cn/post/6888924266008412167

程序中加一个timer,监听tab按键,然后通过mouse_event移到feedback上面,并完成点击动作。你说的我用c++轻松搞定,不明白的话,我可以给你编写一个专用程序。



<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <button tabindex="0" onkeydown ="alert(1)" >我是</button>
    <button tabindex="1" onkeydown ="alert(2)" >feedback </button>
</body>
</html>