2014-10-11 20 views
1

我有一個滑塊,我想讓它設置窗口的滾動百分比,無論滑動百分比是多少,目前我無法得到正確的方程式爲了做到這一點,我還注​​意到我的滑塊並不是非常平滑,並且從一端跳到另一端而不停止滑塊離開的地方,那麼解決這兩個問題的最佳方法是什麼?任何幫助,還有很長的感謝方式,下面是該問題的一個fiddle如何設置基於滑塊百分比的窗口滾動頂部

$('.bar-long').slider({ 
    orientation: "vertical", 
    value: 100, 
    slide: function (event, ui) { 

    //This equation should make the window the same percentage as the slider but not working  
     $(window).scrollTop(((100 - ui.value)* $(window).height())/100); 

    } 
}); 
+0

取滑塊的百分比,然後取整個窗口的高度,然後將百分比乘以高度(例如0.8 * 1200),然後將滾動設置爲該像素。我認爲這將起作用 – 2014-10-11 22:04:43

+0

文檔高度不應該在等式中的某個地方? – user1950929 2014-10-11 22:09:59

+0

你能用文檔高度做一個例子公式嗎? – 2014-10-11 22:46:53

回答

1

正確的公式是:

$(window).scrollTop((100 - ui.value)/100 * $(document).height()) 

,使其順滑,你得把滾動條的外滾動容器(請參閱fiddle),但至少在此方法的版本中,您需要在內容容器上使用overflow: hidden,該內容容器不僅可以移除瀏覽器滾動條,還可以移除鼠標滾輪功能。 如果您有像這樣的單獨內容容器,則必須使用其高度而不是文檔高度,因爲後者只是窗口高度。

+0

這很好用!謝謝! – 2014-10-12 02:41:46