微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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事件.

原文地址:https://www.jb51.cc/jquery/530892.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐