0

我的页面上有一个滑块,我经常使用键盘左右移动手柄。但是,如果未选择手柄,则按下按键时它不会滑动。我试过模拟手柄上的点击,但似乎没有选择它。

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

如何使用键盘左右移动手柄而无需先选择它?

4

1 回答 1

1

当按下适当的键时,将keyupand事件传递给句柄。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是右键
于 2013-10-03T21:38:06.720 回答