我有一個jQuery Mobile Slider元素。它的意思是一個百分比,所以它的範圍從0到100最小/最大。因爲它在手機上使用,所以我將步驟設置爲5,我覺得更容易達到25%或50%。但是說有人想要66%。我希望他們能夠將此值輸入到輸入框中,並將其更新爲66%。相反,滑塊回落到65%。jQuery Mobile滑塊 - 使輸入能夠違反步驟
我可以直接編輯輸入框來更改滑塊值嗎?
我有一個jQuery Mobile Slider元素。它的意思是一個百分比,所以它的範圍從0到100最小/最大。因爲它在手機上使用,所以我將步驟設置爲5,我覺得更容易達到25%或50%。但是說有人想要66%。我希望他們能夠將此值輸入到輸入框中,並將其更新爲66%。相反,滑塊回落到65%。jQuery Mobile滑塊 - 使輸入能夠違反步驟
我可以直接編輯輸入框來更改滑塊值嗎?
你可以改變任何你想要一旦用戶進入自定義值step
值。稍後,將step
更改爲其原始值。
$(document).on('focus', '#slider-1', function() {
$(this).attr('step', '1');
});
$(document).on('click', '.ui-slider-handle', function() {
$('#slider-1').attr('step', '10');
});
我建議類似奧馬爾的解決方案,但將在默認情況下離開step
較低的價值和使用jQuery移動slidestart
和slidestop
事件。在我的情況下,它的工作更可靠。
$('#slider').on('slidestart', function(event) {
$(this).attr('step', '5');
});
$('#slider').on('slidestop', function(event) {
$(this).attr('step', '1');
});
你可以做這樣的事情http://jsfiddle.net/Palestinian/LSGAk/。編輯文本框時,將'step'值更改爲'1'。一旦滑動按鈕被點擊,將'step'改回到'10'。 – Omar
謝謝,簡單的想法,並且運作良好。我決定使用'onfocus'事件,因爲它不太經常打電話。但那確實有用。請作爲解決方案發布,我會接受。我想你也回答了我的其他一些問題,所以非常感謝你的幫助! – Paul
我很高興我一直在幫助保羅:) – Omar