javascript - 在 Safari Mac 上触发 "ENTER"键上的按钮

标签 javascript jquery safari get keyup

我有一个搜索框,我使用以下 JS 来触发 ENTER 键上的按钮:

Javascript

var input = document.getElementById("s");
input.addEventListener("keyup", function(event) {
    if (event.keyCode === 13) {
    event.preventDefault();
    document.getElementById("searchsubmit").click();
}};

它在除 Mac 上的 Safari 之外的所有浏览器上都运行良好。

不兼容?

最佳答案

建议使用event.code而不是event.keyCode More documentation here

keyCode 已被弃用,并且可能无法在所有浏览器中正常工作。

var input = document.getElementById("s");
input.addEventListener("keyup", function(event) {
    if (event.code === 'Enter') {
      console.log('ENTER');
    }
});
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>
  <input id="s">
</body>
</html>

关于javascript - 在 Safari Mac 上触发 "ENTER"键上的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56117270/

相关文章:

javascript - 垂直居中相对位置+未知高度

javascript - 如何在 Angular JS 中进行变量路由

php - 使用 twbs 分页插件通过 ajax 更新 smarty 变量

javascript - 根据浏览器宽度和高度定位图像

html - 为什么转换不能正常工作 - Safari

SSL 证书不适用于 safari

javascript - 为 SelectField 显示空白菜单项的正确方法是什么(material-ui,react)

Javascript:验证每个组合框选择是否唯一

javascript - 使用 JQuery 将此特定数组附加到 html select

ios - iOS Safari 11.3 上的导航器中没有服务 worker