使用keyup模拟单击

时间:2013-06-07 16:39:24

标签: javascript jquery keyboard-shortcuts

我正在尝试使用jQuery将键盘导航添加到一对下一个/上一个链接。

我原本以为它会像这样简单,但显然不是:

 $(document.documentElement).keyup(function (event) {
   if (event.keyCode == 37) {
     $('a.next').click();
   } else if (event.keyCode == 39) {
     $('a.prev').click();
   }
 });

任何帮助都非常感激。

3 个答案:

答案 0 :(得分:1)

$(document).on('keyup', function (event) {
  if (event.which === 37) {
    window.location.hash = $('a.next').attr('href'); 
  }
  else if (event.which === 39) {
    window.location.hash = $('a.prev').attr('href');
  }
});

http://codepen.io/vermilion1/pen/eCtnv

答案 1 :(得分:0)

问题是您无法.click() <a>标记。您可以将此代码onload添加到工作中:

$('a').on('click', function(){
    window.location = this.href;
});

答案 2 :(得分:-1)

首先,您应该为下一个和上一个链接定义点击事件,然后在代码更改中定义:

$('a.next').click();
$('a.prev').click();

由:

$('a.next').trigger('click');
$('a.prev').trigger('click');