私のページには 1 つのスライダーがあり、キーボードを使用してハンドルを左右に動かすことがよくあります。ただし、ハンドルが選択されていないと、キーを押してもスライドしません。ハンドルのクリックをシミュレートしてみましたが、選択されていないようです。
$handle = $slider.find('.ui-slider-handle');
$handle.click();
最初にハンドルを選択せずに、キーボードでハンドルを左右に動かすにはどうすればよいですか?
私のページには 1 つのスライダーがあり、キーボードを使用してハンドルを左右に動かすことがよくあります。ただし、ハンドルが選択されていないと、キーを押してもスライドしません。ハンドルのクリックをシミュレートしてみましたが、選択されていないようです。
$handle = $slider.find('.ui-slider-handle');
$handle.click();
最初にハンドルを選択せずに、キーボードでハンドルを左右に動かすにはどうすればよいですか?
適切なキーが押されたときに、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);
}
});