如何让jQuery Simple Slider显示初始值?

时间:2014-10-22 20:25:00

标签: javascript jquery

我似乎无法获得jQuery Simple Slider(http://loopj.com/jquery-simple-slider/)来初始化一个跨度,该跨度在拖动之前显示滑块值。拖动滑块后,跨度确实会更新,并且更新跨度的代码在同一个绑定中,因此它看起来像滑块:已更改的事件被捕获但滑块:就绪没有。

<form>
    <input name="slider" 
           type="text" 
           data-slider="true" 
           data-slider-highlight="true" 
           data-slider-step="1" 
           data-slider-range="1,99" 
           value="20">  
</form>



$("[data-slider]")
    .each(function () {
        var range;
        var input = $(this);
        $("<span>").addClass("output")
            .insertAfter(input);
        range = input.data("slider-range").split(",");
        $("<span>").addClass("range")
            .html(range[0])
            .insertBefore(input);
        $("<span>").addClass("range")
            .html(range[1])
            .insertAfter(input);
        $(this).bind("slider:ready slider:changed", function (event, data) {
            $(this).nextAll(".output:first")
                .html(data.value.toFixed(2));
        })
    });

然而,simpleslider作者给出的examples似乎确实显示了初始滑块值,但我无法看到我正在采取的不同方式阻止我的工作。

请在此处查看我的小提琴http://jsfiddle.net/nickweavers/77c89pju/23/

1 个答案:

答案 0 :(得分:1)

您可以手动添加第一次的值,我认为这是更简单的方法。

http://jsfiddle.net/77c89pju/26/

我写的代码是在&#34; data-slider&#34;的每个循环中调用的匿名函数的末尾。是:

$(this).nextAll(".output:first").html($(this).val());