我正在使用jQuery UI Slider作为HTML5输入类型=范围的后备。最初,我想使用input-element中的值来设置jQuery UI Slider的值,但这似乎不起作用。 input-element的值设置为50,但是当创建滑块时,它的值为100.如果我使用value: 50
而不是value: $input.attr('value')
,它可以正常工作。 min: $input.attr('min')
和max: $input.attr('max')
工作得很好。
这是我的代码:
$(document).ready(function(){
sliderFallback();
});
function sliderFallback(){
$('input[type=range]').each(function() {
var $input = $(this);
var $slider = $('<div id="' + $input.attr('id') + '" class="' + $input.attr('class') + '"></div>');
$slider.slider({
min: $input.attr('min'),
max: $input.attr('max'),
value: $input.attr('value'),
slide: function(e, ui) {
$(this).val(ui.value);
}
});
$input.after($slider).hide();
});
}
答案 0 :(得分:1)
试试这个:
function sliderFallback(){
$('input[type=range]').each(function() {
var $input = $(this);
var $slider = $('<div id="' + $input.attr('id') + '" class="' + $input.attr('class') + '"></div>');
var val = parseInt($(this).val());
$slider.slider({
min: $input.attr('min'),
max: $input.attr('max'),
value: val,
slide: function(e, ui) {
$(this).val(ui.value);
}
});
$input.after($slider).hide();
});
}