jquery范围滑块值跟随句柄?

时间:2013-09-19 08:21:47

标签: jquery html css

我正在使用jquery范围滑块,我设法在不同的输入中分割两个值。现在不要生我的气,我仍然对jquery感到高兴,我想知道如何设置每个输入跟随滑块上的句柄?

与此示例中的内容类似:http://egorkhmelev.github.io/jslider/

我的代码到现在为止如下:

脚本:

$(function() {
    $( ".slider-assets" ).slider({
        range: true,
        min: 100,
        max: 500,
        values: [ 200, 300 ],
        slide: function( event, ui ) {
            $( ".amount-assets1" ).val( ui.values[ 0 ] + "k €");
            $( ".amount-assets2" ).val( ui.values[ 1 ] + "k €" );
        }
        });
        $( ".amount-assets1" ).val($( ".slider-assets" ).slider( "values", 0 ) + "k €" );
        $( ".amount-assets2" ).val($( ".slider-assets" ).slider( "values", 1 ) + "k €" );
});

HTML:

<input type="text" class="amount-assets1" />
<input type="text" class="amount-assets2" />
<div class="slider-assets"></div>

的CSS:

.amount-assets1,.amount-assets2{
    width: 48px;
}

你可以在这里查看和玩我的jsfiddle:http://jsfiddle.net/dzorz/sJBLh/

问题是我不知道从哪里开始。我是否需要另一个将工具提示放在句柄或其他内容上的插件?

欢迎任何建议和解决方案。

感谢。

2 个答案:

答案 0 :(得分:1)

您需要使用事件功能指定工具提示句柄 见代码:

var sliderTooltip = function(event, ui) {
var curValue = ui.value || initialValue;
var tooltip = '<div class="tooltip"><div class="tooltip-inner">' + curValue + '</div><div class="tooltip-arrow"></div></div>';

$('.ui-slider-handle').html(tooltip);

}

请参阅以下演示以获取完整参考: http://jsfiddle.net/npsingh/WQe98/

答案 1 :(得分:0)

好的,我已经设法让它发挥作用:http://jsfiddle.net/dzorz/X3DVv/

脚本有点复杂,但它有效:

    $(function() {
    $( ".slider-assets" ).slider({
        range: true,
        min: 100,
        max: 500,
        values: [ 200, 300 ],
        slide: function( event, ui ) {
            $( ".amount-assets" ).val( ui.values[ 0 ] + "k € - " + ui.values[ 1 ] + "k €");

            $('.ui-slider-handle:first').html('<div class="tooltip top slider-tip"><div class="tooltip-arrow"></div><div class="tooltip-inner">' + ui.values[0]  + "k €" + '</div></div>');
            $('.ui-slider-handle:last').html('<div class="tooltip top slider-tip"><div class="tooltip-arrow"></div><div class="tooltip-inner">' + ui.values[1]  + "k €" + '</div></div>');

        }
        });
        $( ".amount-assets" ).val($( ".slider-assets" ).slider( "values", 0 ) + "k € - " + $( ".slider-assets" ).slider( "values", 1 ) + "k €" );

        $('.ui-slider-handle:first').html('<div class="tooltip top slider-tip"><div class="tooltip-arrow"></div><div class="tooltip-inner">' + $(".slider-assets").slider("values", 0)  + "k €" + '</div></div>');
        $('.ui-slider-handle:last').html('<div class="tooltip top slider-tip"><div class="tooltip-arrow"></div><div class="tooltip-inner">' + $(".slider-assets").slider("values", 1)  + "k €" + '</div></div>');
});