gpt4 book ai didi

javascript - 为什么我的 slider 工具提示在开始时不显示文本?

转载 作者:行者123 更新时间:2023-11-28 14:48:19 25 4
gpt4 key购买 nike

我有三个 slider :

<div class="container">
<div class="row" id="time" >
<div class="col-xs-4">
Days: <b>1</b> <input id="days" type="text" class="span2" value="" data-slider-min="1" data-slider-max="31" data-slider-step="1" data-slider-value="[0,31]"/> <b>31</b>
</div>
<div class="col-xs-4">
Months: <b>January</b> <input id="months" type="text" data-provide="slider" data-slider-step="1" data-slider-min="0" data-slider-max="11" data-slider-tooltip="show" data-slider-value="[0,12]" /> <b>December</b>
</div>
<div class="col-xs-4">
Years: <b>0</b> <input id="years" type="text" class="span2" value="" data-slider-min="0" data-slider-max="2017" data-slider-step="1" data-slider-value="[0,2017]"/> <b>Today</b>
</div>
</div>
</div>

我使用以下js(注意它可以做很多事情,但我们只是寻找days的工具提示问题和)。

var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
$("#days, #years").slider({
tooltip: 'always',
});
$("#days").slider({
formatter: function(value) {
return 'Days: ' + value;
}
});
$("#years").slider({
formatter: function(value) {
return 'Years: ' + value;
}
});
$("#months").slider({
tooltip: 'always',
value: [0, 12],
tooltip: 'always',
formatter: function(value) {
return months[value[0]] + " : " + months[value[1]];
},
});
$("input").on("slide", function(slideEvt) {
getData();
});
getData = function() {
var data = [];
for (var i = 0; i < 2; i++) {
data.push({
day: $('#days').slider().val().split(',')[i],
month: months[$('#months').slider().val().split(',')[i]-1],
year: $('#years').slider().val().split(',')[i],
}) ;
}
console.log(data);
}

在 slider 天和年的范围数字之前,应显示(示例)Days: 22:16Years 1200:1985 但标签 DaysYears 仅在我们开始与 slider 交互后出现,而不是在我们加载它时才出现

JsFiddle here

最佳答案

好的,检查完unminified后 slider 的源代码看起来需要额外的“刷新”调用,因为在初始化阶段没有调用格式化程序。只需像这样调用 relayout 即可:

$("#days").slider({
formatter: function(value) {
return 'Days: ' + (value instanceof Array ? value.join(':'): value);
}
}).slider('relayout');

$("#years").slider({
formatter: function(value) {
return 'Years: ' + (value instanceof Array ? value.join(':'): value);
}
}).slider('relayout');

已更新https://jsfiddle.net/pz3ce0o6/1340/

关于javascript - 为什么我的 slider 工具提示在开始时不显示文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45530130/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com