События клавиатуры - PullRequest
       51

События клавиатуры

3 голосов
/ 08 октября 2010

Как вызвать событие click ссылки, когда нажата какая-либо кнопка клавиатуры?

Я бы хотел вызвать следующую / предыдущую страницу на Ctrl + & rarr; / Ctrl + & larr;

Ответы [ 5 ]

5 голосов
/ 08 октября 2010
$(document).keydown(function(e) {
  if(e.ctrlKey){
     if(e.keyCode == 37){
        //ctrl + leftbutton pressed
        $("a.prevButton").trigger("click");
     }else if(e.keyCode == 39){
        //ctrl + rightbutton pressed
        $("a.nextButton").trigger("click");
     }
  }
});

вживую

1 голос
/ 08 октября 2010

просто используйте этот плагин с jQuery, и вы можете настроить комбинации клавиш для сочетаний клавиш: http://plugins.jquery.com/project/hotkeys.

Вы можете настроить ярлыки следующим образом:

<script type="text/javascript">
        $(document).ready(function(){
            shortcut("Ctrl+Right",function() {
            document.getElementById("your next button ID").click();
        });
        shortcut("Ctrl+Left",function() {
        document.getElementById("your prev button ID").click();
        });
    });
</script>
1 голос
/ 08 октября 2010

Вы можете попробовать

$(document).bind("keydown", function(e) {
  if (e.ctrlKey) {
    if(e.keyCode == 37) {
        document.getElementById("prevButton").click();
    }
    else if(e.keyCode == 39) {
        document.getElementById("nextButton").click();
    }
  }
});

код 37 для левой стрелки и код 39 для правой стрелки

1 голос
/ 08 октября 2010

Возможно, вы захотите изучить библиотеку jquery.hotkeys, найденную здесь: http://github.com/tzuryby/jquery.hotkeys. Если не использовать саму библиотеку, исходный код может дать вам представление о том, что необходимо сделать.

[Отказ от ответственности: я нашел эту библиотеку с помощью поиска, не использовал ее и не проверял сам. Используйте по своему усмотрению.]

0 голосов
/ 08 октября 2010

Я не знаю, как это сделать с помощью jQuery [но я уверен, что это будет очень просто].

С точки зрения чистого JavaScript вы можете получить ссылку на ссылку, используя document.getElementById.Затем получите атрибут href, используя .href.Наконец, измените местоположение документа на местоположение href -> document.location = href

, если вы не хотите перенаправления, установите атрибут формы action и выполните form.submit()

...