按左/右箭头按一下

时间:2015-11-17 23:01:02

标签: javascript jquery events javascript-events key

当按下左箭头或右箭头时,我想在另一个元素上触发click事件。这是代码:

$(window).keypress(function (e) {
  var key = e.which;
  if(key == 13 || key == 39) { // the enter key code or right arrow
    $('.next').click();
    return false;  
  } else if(key == 37) { // left arrow
    $('.prev').click();
    return false;  
  }
});

使用Enter键,它就像一个魅力,但在箭头按下,没有任何反应,就像使用飞溅的Magikarp! :)我错过了什么?

相关问题:Press left and right arrow to change image?

1 个答案:

答案 0 :(得分:2)

箭头键不会触发keypress事件,但他们执行会触发keyupkeydown事件。

最好使用keyup,因为keydown可以在您按住某个键时多次触发。

$(window).keyup(function (e) {
  var key = e.which;
  if(key == 13 || key == 39) { // the enter key code or right arrow
    $('.next').click();
    return false;  
  } else if(key == 37) { // left arrow
    $('.prev').click();
    return false;  
  }
});