2009-08-20 2 views
0

В JQuery, как я могу установить событие таким образом, чтобы при просмотре некоторых изображений пользователем и нажатии клавиши со стрелкой влево/вправо он вызывает функцию, которая может использоваться для отображения предыдущих/следующих фотографий? Мне нужно только знать, как проверить, нажата ли клавиша справа/слева, и игнорировать все остальные нажатия клавиш.Навигация на клавиатуре с JQuery

Изображение будет в своем собственном DIV \

ответ

3

Я использовал это в прошлом. Это работает для меня в enviornments я использовал (Linux и окна с FF)

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

, как говорится, я не уверен, что подключение на клавиши со стрелками является хорошей идеей, так как пользователь может изменить текст размера и вызвать появление полосы прокрутки. Стрельба неожиданно изменила бы картину.

1

Используйте событие JQuery нажатие примерно так:.

$("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); 
}); 

Я не уверен, какое значение будет присутствовать влево/вправо, но немного эксперимент с этим скриптом должен вас поймать

Смежные вопросы