按下键时选择滑块手柄 - jqueryUI

时间:2013-10-03 21:38:07

标签: javascript jquery jquery-ui

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

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

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

1 个答案:

答案 0 :(得分:1)

按下相应的键时,将keyupkeydown事件传递给句柄。您只应在尚未选择句柄时执行此操作。

$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 是正确的密钥