编程语言
首页 > 编程语言> > javascript-jQuery-ui滑块-如何阻止两个滑块相互控制

javascript-jQuery-ui滑块-如何阻止两个滑块相互控制

作者:互联网

这是参考先前询问的question

这里的问题是,每个滑块控制另一个.它导致反馈.

我怎么可能停止它?

$(function() {
    $("#slider").slider({ slide: moveSlider2 });
    $("#slider1").slider({ slide: moveSlider1 });
    function moveSlider2( e, ui ) 
    {
        $('#slider1').slider( 'moveTo', Math.round(ui.value) );
    }

    function moveSlider1( e, ui ) 
    {
        $('#slider').slider( 'moveTo', Math.round(ui.value) );
    }
});

解决方法:

这有点像hack,但可以:

$(function () {
    var slider = $("#slider");
    var slider1 = $("#slider1");
    var sliderHandle = $("#slider").find('.ui-slider-handle');
    var slider1Handle = $("#slider1").find('.ui-slider-handle');

    slider.slider({ slide: moveSlider1 });
    slider1.slider({ slide: moveSlider });

    function moveSlider( e, ui ) {
        sliderHandle.css('left', slider1Handle.css('left'));
    }

    function moveSlider1( e, ui ) {
        slider1Handle.css('left', sliderHandle.css('left'));
    }
});

基本上,您可以通过直接操纵css来避免反馈,而不是触发slide事件.

标签:jquery-ui-slider,jquery-ui,slider,javascript,jquery
来源: https://codeday.me/bug/20191210/2103923.html