Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery UI滑块-大范围_Jquery_Jquery Ui_Jquery Ui Slider - Fatal编程技术网

jQuery UI滑块-大范围

jQuery UI滑块-大范围,jquery,jquery-ui,jquery-ui-slider,Jquery,Jquery Ui,Jquery Ui Slider,我用jQuery UI制作了一个滑块,它工作得非常好,只是范围从0到250000,而且每次发生变化时都会有事件调用ajax请求,如果我慢慢地从一侧滑动到另一侧,结果将是大量ajax请求,这一点都不好 一直在挖掘jQueryUI文档,但没有找到任何解决此问题的方法。我会在用户按下滑块时暂时阻止事件,并仅在用户停止与它交互时触发事件,但对此我一无所知。与其订阅滑块的幻灯片事件,为什么不订阅其slidechange或stopslide事件 $( ".selector" ).slider({ ch

我用jQuery UI制作了一个滑块,它工作得非常好,只是范围从0到250000,而且每次发生变化时都会有事件调用ajax请求,如果我慢慢地从一侧滑动到另一侧,结果将是大量ajax请求,这一点都不好


一直在挖掘jQueryUI文档,但没有找到任何解决此问题的方法。我会在用户按下滑块时暂时阻止事件,并仅在用户停止与它交互时触发事件,但对此我一无所知。

与其订阅滑块的幻灯片事件,为什么不订阅其slidechange或stopslide事件

$( ".selector" ).slider({
   change: function(event, ui) { ... }  // Called after slidestop or if changed programmatically
   stop: function(event, ui) { ... }    // Called when user stops sliding
});

与其订阅滑块的幻灯片事件,为什么不订阅其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插件喜欢使用这种方法,当用户停止在文本框中键入内容时,它只发送Ajax请求。

一种可能是创建一个计时器,并以毫秒为单位给它一个超时时间,比如500,也就是半秒。每次触发幻灯片事件时,将计时器重置回超时时间

    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"));
}
如果计时器成功地完全倒计时,您可以假设用户已停止移动滑块并触发Ajax调用

JQuery插件喜欢使用这种方法,当用户停止在文本框中键入内容时,只发送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"));
}