События клавиатуры
Как мне позвонить click
событие ссылки, когда какая-то кнопка клавиатуры нажата?
Я хотел бы вызвать следующую / предыдущую страницу по Ctrl + → / Ctrl + ←
5 ответов
$(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");
}
}
});
Вы могли бы попробовать
$(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 для правой стрелки
Возможно, вы захотите изучить использование библиотеки под названием jquery.hotkeys, которая находится здесь: http://github.com/tzuryby/jquery.hotkeys. Если не использовать саму библиотеку, исходный код может дать вам представление о том, что нужно сделать.
[Отказ от ответственности: я нашел эту библиотеку с помощью поиска, и не использовал ее и не проверял сам. Используйте по своему усмотрению.]
Просто используйте этот плагин с 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>
Я не знаю, как это сделать с помощью jQuery [но я уверен, что это будет очень просто].
С точки зрения чистого JavaScript, вы можете получить ссылку на ссылку, используя document.getElementById
, Затем получить его href
атрибут с использованием .href
, Наконец, измените местоположение документа на местоположение href -> document.location = href
если вы не хотите перенаправления, установите форму action
приписывать и делать form.submit()