Выберите ручку слайдера при нажатии клавиш - jqueryUI

0

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

$handle = $slider.find('.ui-slider-handle');
$handle.click();

Как перенести ручку влево и вправо с помощью клавиатуры без необходимости ее выбирать?

1 ответ

1
Лучший ответ

Пропустите keyup и keydown события к ручке, когда соответствующие клавиши нажаты. Вы должны делать это только тогда, когда дескриптор еще не выбран.

$handle = $slider.find('.ui-slider-handle')
$(document).on('keyup keydown', function(e) {
  if ( $handle.hasClass('ui-state-focus') ) return;

  if (e.which === 37 || e.which === 39) {
    e.target = $handle.get(0);
    $handle.triggerHandler(e);
  }
});
  • 37 - левая клавиша
  • 39 - это правильный ключ

Ещё вопросы

Сообщество Overcoder
Наверх
Меню