【问题标题】:Taking a value from a jQuery Mobile Slider and setting it on another slider从 jQuery Mobile 滑块中获取一个值并将其设置在另一个滑块上
【发布时间】:2013-01-23 05:56:49
【问题描述】:

我正在尝试从 jQuery 移动滑块中获取一个值,然后将其拖动一点,然后以编程方式将其设置为另一个 jQuery 移动滑块。

我尝试过$(selector).slider(value)$(selector).attr('value)$(selector).slider().value(),但它们似乎都不适用于我的情况。

我正在使用 jQuery Mobile 1.2.0 和 jQuery 1.8.0

下面是我尝试开始工作的代码:

$('#slider1').change(function(){
        var slide1Val = $(this).val();
        $('#slider2').val(slide1Val).slider('refresh');
};

Here's the actual URL that I'm trying to work on

【问题讨论】:

    标签: jquery jquery-mobile


    【解决方案1】:

    你可以这样做

    $("#gen1").live("pageinit",function(){
         $("#slider1").change(function(){
             $("field1").html(this.value);
             $("#slider2").val(this.value/2);
             $("#slider2").slider("refresh");
       });
    });
    

    希望对你有帮助

    【讨论】:

    • 你可以在这里找到一个小提琴 jsfiddle.net/YemGJ/1。但是,您的代码是正确的并且工作正常。如果我遗漏了什么,请告诉我。
    • 这个很有意义。玩弄了那个小提琴,但它似乎并没有很好地集成到我的代码中。这是我的代码jsfiddle.net/b3bJr/5
    • 你可以在这里找到你的代码的工作小提琴jsfiddle.net/b3bJr/7我已经在“gen1”的'pageinit'中添加了更改事件。这将确保在你执行任何操作之前div是好的.希望这会有所帮助
    • 谢谢!你真的帮了很多忙!但是,live 方法不是已经被弃用并替换为 on 了吗?但它有效! :D
    • 很高兴得到一些帮助。非常真实的 .live() 已被弃用,应替换为 .on()。坦率地说,我仍在尝试弄清楚如何正确使用它。我发现了一个很好的问题:stackoverflow.com/questions/9451814/…希望这会有所帮助
    【解决方案2】:

    这是一个工作示例:http://jsfiddle.net/Gajotres/PzTeX/

    该示例是为此问题创建的:https://stackoverflow.com/a/13554192/1848600

    我一个月前做的。基本上它会根据第一个滑块移动 3 个其他滑块,这是一个代码示例:

    $("input#europe, input#us, input#uk, input#japan").live("slidestop", function() {
        $(this).mouseup();
        var changeVal = ($(this).val() - $(this).attr('min'))/($(this).attr('max') - $(this).attr('min'));
        changeSliders(changeVal, $(this).attr('id'));    
    });
    
    function changeSliders(changeVal, sliderID){
        $("input#europe, input#us, input#uk, input#japan").each(function(){
        var newValue = parseFloat($(this).attr('min')) + parseFloat(($(this).attr('max') - $(this).attr('min')))*changeVal;
        if($(this).attr('id') != sliderID) {    
            $(this).val(newValue);
        }
        });
        $("input#europe, input#us, input#uk, input#japan").slider('refresh');    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-12-22
      • 2021-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多