有谁知道当用户移动滑块指针时如何让气泡出现在 jQuery 滑块控件上方?理想情况下,我希望范围滑块中的两个指针都有自己独立的气泡。气泡将动态显示用户正在移动的滑块指针的当前选定值。这是一个艰难的!
问问题
3899 次
3 回答
2
这是一个更简单的方法:
$('#slider').slider({
range: true,
min: 0,
max: 10,
values: [0, 10],
create: function(){
var handle = jQuery(this).find('.ui-slider-handle');
var bubble = jQuery('<div class="valuebox"></div>');
handle.append(bubble);
},
slide: function(evt, ui) {
ui.handle.childNodes[0].innerHTML = ui.value;
}
});
我的问题是让初始值显示在气泡中,这是我尚未解决的问题。
于 2012-04-30T09:47:02.450 回答
1
..
<div id="value1"> </div>
<div id="value2"> </div>
<div id="slider"></div>
CSS
#value1 { position:relative; }
#value2 { position:relative; }
文...
$("#slider").slider({
animate:false,
range: true,
values:[0,400],
min: 0,
max: 500,
step: 1,
change: function(event, ui) {
updateValues(event,ui);
},
slide: function(event, ui) {
updateValues(event,ui);
}
});
function updateValues(event, ui)
{
var offset1 = $('.ui-slider-handle:first').offset();
var offset2 = $('.ui-slider-handle:last').offset();
var value1 = $('#slider').slider('values',0);
var value2 = $('#slider').slider('values',1);
$('#value1').text(value1).css({'left':offset1.left});
$('#value2').text(value2).css({'left':offset2.left});
}
我在这里放了一个演示。它很丑,但很实用 :) 我会帮助让它看起来像一个泡沫,但我不是一个图形人。希望这能让你开始。
编辑 - 我注意到动画需要关闭 CSS 才能正确跟踪滑块本身的点击(也就是不拖动)。更新了代码和演示,以反映跟踪滑块点击和拖动所需的更改。
于 2009-06-03T15:22:39.173 回答
0
您可以在初始化或加载时加载如下所示的块(这将使用初始值绘制滑块)。我不确定这是否是最好的方法,但它对我有用。
$('#slider').slider({
range: true,
min: 0,
max: 10,
values: [0, 10]
});
于 2013-04-01T15:50:27.780 回答