javascript - 如何让escape键改变url?

标签 javascript jquery jquery-events

$(document).keyup(function(e) {
    if (e.keyCode == 27) { ... } 
});

前面的代码是我发现的判断escape键是否按下并释放的代码;但是,我以前从未使用过这样的代码。

  1. 我想知道就安全性和性能而言,这是否是一个可以使用的代码?
  2. 我想知道如何更改页面网址?基本上,当他们按下 esc 键并放开时,它会更改为登录页面。
  3. 有更好的方法吗?

最佳答案

您可以在按 esc 按钮时更改当前网址,如下所示:

window.onkeyup = function(e) {
    var event = e.which || e.keyCode || 0; // .which with fallback

    if (event == 27) { // ESC Key
        window.location.href = 'YOURURL'; // Navigate to URL
    }
}

或者,您可以以同样的方式使用 jQuery 的 $(window).keyup()

这里我们向 onkeyup 添加一个事件监听器来检查用户与键盘的交互。当用户按下然后释放一个键时,该事件将触发。

然后我们检查该键是否为 ESC 键 (27)。最流行的浏览器(Chrome、Safari、Firefox、Opera、IE)都支持键代码 27(当使用 .which 时)。

最后一点。要防止任何默认操作,您可以在 keydownkeypressreturn false;;如上所述 here .

关于javascript - 如何让escape键改变url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20262030/

相关文章:

javascript - 如何使用 angularjs 过滤谷歌地图标记?

javascript - 如何在 Office 2013 应用程序中获取当前正在运行的应用程序的名称

javascript - 在 JavaScript 中,如何将多个数组转换为 HTML 表并在 for 循环 JSON 对象时打印它们

javascript - 使用 JavaScript 更改 SVG 元素的 X 和 Y 值

jquery - 使用 BackStretch.js 自动拉伸(stretch)现有背景图像?

javascript - jQuery promises with summernote hints

javascript - .change() 仅适用于当多个打开时的选择

javascript - 提交表单的事件监听器在哪里?

javascript - 如何创建 HTML5 自定义验证来检查插入到 2 个电子邮件输入字段中的值是否相同?

jquery - 借助 jQuery 实现的新 HTML 用户界面