【问题标题】:JQueryUI Slider - Tooltip for the Current PositionJQueryUI 滑块 - 当前位置的工具提示
【发布时间】:2012-06-25 15:34:51
【问题描述】:

目前我有一个滑块和一个小的输入文本框,它会根据您在其上滚动的位置进行更新。

这里是javascript:

$("#slider").slider({
    value: 500,
    min: 0,
    max: 1000,
    step: 50,
    slide: function(event, ui) {
        $("#budget").val(ui.value);
    },
    change: function(event, ui) {}
});
$("#budget").val($("#slider").slider("value"));​

这里是 html/css:

<input type="text" id="budget" style="width:50px;text-align:center"/>

<div id="slider"></div>​

但是,带有图形的小文本框位于滑块的顶部看起来有点奇怪,所以我希望它更新其水平位置,使其位于滑块的手柄上方(.ui-slider-句柄)如果可能的话 - 就像一种工具提示。

【问题讨论】:

    标签: javascript jquery jquery-ui slider tooltip


    【解决方案1】:

    我不确定您是否需要输入字段或只是一种显示文本的方式,但您可以显示类似 jsFiddle example 的工具提示。

    jQuery

    var tooltip = $('<div id="tooltip" />').css({
        position: 'absolute',
        top: -25,
        left: -10
    }).hide();
    $("#slider").slider({
        value: 500,
        min: 0,
        max: 1000,
        step: 50,
        slide: function(event, ui) {
            tooltip.text(ui.value);
        },
        change: function(event, ui) {}
    }).find(".ui-slider-handle").append(tooltip).hover(function() {
        tooltip.show()
    }, function() {
        tooltip.hide()
    })​
    

    【讨论】:

    • 这就是我所追求的,但是通过这种实现,它会出现令人难以置信的故障,并且在拖动它时会间歇性地消失。
    • 它是如何“令人难以置信的故障”?在演示中,在您将鼠标移出手柄之前,什么都不会消失。
    • 哦,我已经弄清楚发生了什么 - 如果您将手柄拖得太快,您就会将鼠标移出手柄。
    • @MarkRobbo 如果滑块不消失很重要,您可以将显示/隐藏绑定到滑块的开始和停止事件而不是悬停
    • 这里是 startstop 事件的实现,用于显示工具提示:plnkr.co/edit/ydF3REsypFDlvz37fT4a?p=preview
    猜你喜欢
    • 2014-03-10
    • 2011-03-19
    • 2021-07-30
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 2019-05-12
    • 2015-03-27
    • 1970-01-01
    相关资源
    最近更新 更多