2010-10-28 62 views

回答

3

的非常簡單的選擇是使用oninput事件和,假設你的值和寬度由小提琴,被準確地表示當的範圍內增大超過所述容器的寬度的值通過操縱scrollLeft rangeValue - parentWidth。我在你的jsBin例如使用下面的代碼來實現這一點:

var rng = document.getElementById("range"); 

rng.oninput = function() { 
    this.parentNode.scrollLeft = this.value - 400; 
} 

而且結果可以被全世界展示here。您可能需要微調以獲得理想的效果。

另一種方法是檢查該值是否大於某個值,然後將該框完全滾動到右側。當它以其他方式返回時,請完全滾動到左側。

+0

+1 for'oninput' – Harmen 2010-10-28 09:40:20

+0

謝謝,它可以正常工作,但滑塊在達到400值時會停留在那裏。我想我將不得不調整它... – Mircea 2010-10-28 10:20:24

+0

@Mircea:滑塊移動,但給出的外觀,它不會因爲容器滾動相同的數量。你可以調整它,或者與我建議的其他選項一起去,在通過一定的閾值後滾動全部數量。 – 2010-10-28 10:26:45