2012-07-12 154 views
2

我試圖設置滑塊在滑動事件中的值。這裏是我的代碼:jquery滑塊設置滑動後的值

$(document).ready(function() { 
      $("#slider").slider({ 

       min: 0, 
       max: 10000, 
       step: 1, // Use this determine the amount of each interval 
       values: [0], // The default range 
       slide: function (event, ui) { 
        var slider = $("#slider").slider({ 
         animate: true 
        }); 
        slider.slider('value', 500); 
       } 
      }); 
     }); 

我在想什麼?我似乎無法設置動畫並設置滑塊的值。

編輯:好吧,現在我可以設置滑塊的值,但它發生得太快。我希望它慢慢達到我設定的價值。這裏是我的編輯代碼:

$(document).ready(function() { 
      $("#slider").slider({ 

       min: 0, 
       max: 10000, 
       animate: "slow", 
       step: 1,// Use this determine the amount of each interval 
       // values: [0] // The default range 
       change: function (event, ui) { 
        $("#slider").slider('value', 500); 
       } 
      }); 
     }); 

我怎樣才能使它慢慢移動到500,而不是設置它的時候了嗎?

謝謝

回答

1

參考

jsFiddle

移動滑塊按鈕並將其釋放後,滑塊按鈕將動畫回到鎖定值。

代碼:

$(document).ready(function() { 

    $('#slider').slider({ 
     min: 0, 
     max: 10000, 
     // Values "fast", "normal", "slow", or duration can be used. 
     animate: 1500, 
     step: 1, 
     // Starting value is 500 
     value: 500, 
     animate: true, 
     change: function(){ 
      // This setTimeout will allow the slider to animated correctly. 
      setTimeout("$('#slider').slider('value', 500);", 350); 
     } 
    }); 

    // On page load, animate the slider to this value of 500. 
    $('#slider').slider('value', 500); 

}); 

狀態更新:所謂海報所需的stop:事件,而不是在UI滑塊的change:事件等具體要求,但沒有視覺差看到什麼時候使用。

+0

我不需要獲取值,我需要將滑塊光標設置爲該值的動畫。現在我可以設置滑塊的值(我在此之後更新我的問題),但無法緩慢移動,光標跳轉到我立即設置的值。 – Pabuc 2012-07-12 10:14:42

+0

Pabuc,我的答案現在有所不同。請查看jsFiddle並告訴我這是否與您正在尋找的內容更接近。 – arttronics 2012-07-12 18:28:15

+0

我能夠通過使用停止而不是滑塊的更改事件來解決我的問題。你可以編輯你的回覆,我會批准它。 – Pabuc 2012-07-15 17:02:40