Как сделать навигацию по меню с помощью клавиш?

Всем привет! Есть меню:

<ul>
 <li>пункт 1</li>
 <li>пункт 2</li>
 <li>пункт 3</li>
 <li>пункт 4</li>
</ul>

Есть стили:

li
{
 cursor:pointer;
 font-size:126%;
 text-align:left;
 width:99%;
 border-radius: 5px;
 padding:2%;
 margin:2%;
 border: 1px solid rgb(200,200,250);
}
li:hover
{
 background: rgb(100,200,150);
}


Как теперь сделать навигацию по этому меню с помощью клавиш вверх-вниз на jquery?
  • Вопрос задан
  • 185 просмотров
Решения вопроса 1
IonDen
@IonDen
JavaScript developer. IonDen.com
Примерно так: jsfiddle.net/IonDen/0hk6bhms
var $menu = $('.menu'),
    $items = $menu.find('li'),
    num = $items.length,
    current = -1;

$(document).on('keyup', function (e) {
    var key = e.which;
    
    switch (key) {
        case 38:
            current--;
            if (current < 0) {
                current = num - 1;
            }
            
            break;
            
        case 40:
            current++;
            if (current > num - 1) {
                current = 0;
            }
            
            break;
    };
    
    $items.eq(current).addClass('active').siblings().removeClass('active');
});
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@dmitryKovalskiy
программист средней руки
1) Ловить события keyPress, keyUp и уточнить во время разработки коды нужных вам клавиш
2) Чуток разобраться - а часто ли будет использоваться сия функциональность, учитывая что рядовой пользователь при нажатии этих кнопок(если вобще их использует) ожидает легкого скролирования.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
15 мая 2024, в 22:07
3000 руб./за проект
15 мая 2024, в 22:06
3000 руб./за проект
15 мая 2024, в 20:48
5000 руб./за проект