我有一個使用jquery ui製作的滑塊,它的工作原理完全正常,除了範圍從0到250000之外,並且由於我每次調用ajax請求都會發生某些更改,如果我慢慢地從一邊滑到另一邊,結果將是大量的Ajax請求,這根本不好。jQuery UI滑塊 - 大範圍
一直在挖掘jquery ui文檔,但沒有看到任何方法來解決這個問題。我會暫時阻止事件,從用戶按下滑塊時開始,只有在用戶停止與之交互時才觸發事件,但沒有發現任何事情。
有什麼想法?
乾杯!
我有一個使用jquery ui製作的滑塊,它的工作原理完全正常,除了範圍從0到250000之外,並且由於我每次調用ajax請求都會發生某些更改,如果我慢慢地從一邊滑到另一邊,結果將是大量的Ajax請求,這根本不好。jQuery UI滑塊 - 大範圍
一直在挖掘jquery ui文檔,但沒有看到任何方法來解決這個問題。我會暫時阻止事件,從用戶按下滑塊時開始,只有在用戶停止與之交互時才觸發事件,但沒有發現任何事情。
有什麼想法?
乾杯!
而不是訂閱滑塊的滑動事件,爲什麼不訂閱它的slidechange或stopslide事件?
$(".selector").slider({
change: function(event, ui) { ... } // Called after slidestop or if changed programmatically
stop: function(event, ui) { ... } // Called when user stops sliding
});
一種可能性是創建一個計時器,並給它一個以毫秒爲單位的超時時間,比如500秒,這是半秒。每次滑動事件觸發時,都要將計時器重置回超時時間。
如果計時器完全倒計時,您可以假定用戶已經停止移動滑塊並觸發您的Ajax調用。
這是JQuery插件如TypeWatch用於在用戶停止在文本框中輸入時僅發送Ajax請求的方法。
we can define steps in it also like,
$("#slider-range-max").slider({
range : "max",
min : 0,
max : 200,
step : 0.1, //steps
value : 200,
slide : function(event, ui) {
$("#amount").val(ui.value);
}
});
Even we can handle it by writing value in textbox like this,
on value change of textbox call this function by passing parameter this.value
function setSlider(value) {
$("#slider-range-max").slider({
range : "max",
min : 0,
max : 200,
step : 0.1,
value : value, // value will be setted slider position as par value
slide : function(event, ui) {
$("#amount").val(ui.value);
}
});
$("#amount").val($("#slider-range-max").slider("value"));
}
錯誤解釋停止方法,謝謝你的信息;) – yoda 2010-11-17 23:49:47