【问题标题】:Using jQuery UI Slider dynamically?动态使用jQuery UI Slider?
【发布时间】:2012-02-27 10:13:52
【问题描述】:

我有一个 jQuery UI 滑块,如果用户在输入元素中键入数字,滑块会适当地移动。

$("#slider-range-min").slider({
            range: "min",
            value: 1,
            step: 1000,
            min: 0,
            max: 5000000,
            slide: function (event, ui) {
                $("input").val(ui.value);
            }
        });
        $("input").change(function (event) {
            var value1 = $("input").val();
            $("#slider-range-min").slider("option", "value", value1);
        });

但我需要的是我希望滑块位于中间,无论我第一次在文本框中输入什么值,然后如果我将滑块向右移动,则意味着我在文本框中的值必须增加,而左侧则为必须在不设置这些最小值和最大值的情况下减少..

有什么建议吗?

编辑:我需要的是当我在文本框中输入 500 时,我的滑块必须自动移动到中心。如果我将滑块向右移动,则末端必须为 1000,左侧必须为 0,如果我输入 400滑块必须自动移动到中心位置,右侧端必须为 800,左侧必须为 0

【问题讨论】:

  • 你能举例说明你的意思吗?也许一些html?让我看看它的样子?
  • @Antimated:我需要的是当我在文本框中输入 500 时,我的滑块必须移动到中心。如果我将滑块向右移动,则末端必须为 1000,左侧必须为 0
  • 而 400 的右端必须是 800 和左端 0
  • @Antimated:明白我的意思吗?

标签: jquery jquery-ui jquery-ui-slider


【解决方案1】:

那么,您需要基本上将滑块范围从 0 更改为文本框中输入的内容的两倍?我认为您可以使用滑块上的“选项”方法,例如:

 $("input").change(function (event) {
     var value1 = parseFloat($("input").val());
     var highVal = value1 * 2;
     $("#slider-range-min").slider("option", {"max": highVal, "value": value1});
 });

编辑:这是一个小提琴 - http://jsfiddle.net/cXYC4/

【讨论】:

    【解决方案2】:

    我不确定,但这可能有效:http://flowplayer.org/tools/rangeinput/

    【讨论】:

      猜你喜欢
      • 2012-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多