使用Jquery进行键盘导航

时间:2009-08-20 15:59:06

标签: javascript jquery

在Jquery中,如何设置一个事件,以便当用户浏览某些图片并按左/右箭头键时,它会调用一个可用于显示上一张/下一张照片的功能?我只需要知道如何检查按下的键是右/左箭头键还是忽略所有其他键前缀。

图像将在其自己的div中。\

2 个答案:

答案 0 :(得分:3)

我过去曾经用过这个。它适用于我使用过的环境(Linux和带有FF的窗口)

$(document).keypress( function(e) { 
  if (e.keyCode === 37) {
     // left
  }
  else if (e.keyCode === 39) {
     // right
  }
});

话虽如此,我不太确定连接箭头键是个好主意,因为用户可以更改文本大小并导致滚动条出现。 Arrowing会意外地改变画面。

答案 1 :(得分:1)

使用jQuery keypress事件,如下所示:

$("input").keypress(function (e) {
  if (e.which == 32 || (65 <= e.which && e.which <= 65 + 25)
                    || (97 <= e.which && e.which <= 97 + 25)) {
    var c = String.fromCharCode(e.which);
    $("p").append($("<span/>"))
          .children(":last")
          .append(document.createTextNode(c));
  } else if (e.which == 8) {
    // backspace in IE only be on keydown
    $("p").children(":last").remove();
  }
  $("div").text(e.which);
});

我不确定左/右会出现哪个值,但是稍微尝试一下这个脚本应该会让你前进