我需要一种方法来执行一个特定的功能,当我按下前进键或后退键在javascript

I Need a way to execute a particular function when i press the forward key or the back key in javascript

本文关键字:javascript 一种 方法 执行 一个 功能      更新时间:2023-09-26

当我在javascript中按前进键或后退键时,我需要一种方法来执行特定的函数。当forward按钮被按下的时候,它可以执行这个函数,但是它不需要输入任何类型的文本框

我的意思是它应该在整个页面上工作,无论我在页面的哪里,但是如果我按下前进按钮,函数应该被执行。

我知道如何通过匹配关键代码在文本框中输入,但不知道如何以其他方式使其工作。

如果你所说的前进键和后退键是指方向键,那么你可以这样做!

document.onkeydown = function(e) {
e = e || window.event;
switch(e.which || e.keyCode) {
    case 37: // left
    break;
    case 38: // up
    break;
    case 39: // right
    break;
    case 40: // down
    break;
    default: return; // exit this handler for other keys
}
   e.preventDefault(); // prevent the default action
});

我非常确信您指的是键盘上的箭头键。正如您所说,当文本框聚焦时,您已经有了工作代码,我也假设您已经在使用onkeydown(或类似的一个)。因此,解决方案是将事件侦听器添加到document中。

像这样,例如:

document.onkeydown = function(e){
    // Your existing code goes here.
}

如果你想检测方向键,你需要使用onkeydown

下面是一个工作示例

使用onkeydown,因为这应该适用于所有浏览器。我不认为onkeypress将工作与谷歌chrome的箭头键事件。

  • 38 =向上箭头
  • 40 =向下箭头

要找到更多信息,您可以在onkeydown函数中使用console.log(event.keyCode);来记录关键代码到浏览器控制台。

function MyFunc() {
  alert("Key up or down!");
}
document.onkeydown = function() {
  if (event.keyCode == 38 || event.keyCode == 40) {
    MyFunc();
  }
}

如果你有任何问题,请在下面留言,我会尽快回复你。

我希望这对你有帮助。编码快乐!

相关文章: