1〜5の値のスライダーがあります。非表示の入力を「日」のIDで更新します。
$(function() {
$("#slider").slider({
value: 3,
min: 1,
max: 5,
step: 1,
slide: function(event, ui) {
$("#days").val(ui.value);
}
});
$("#days").val($("#slider").slider("value"));
});
スライダーにラベルを追加したい
したがって、位置1では1時間、2は12時間、3は1日、4 = 3日、5 = 1週間と表示されます。
しかし、私は日の値を1-5のままにしておきたい
これはどのように可能ですか?
編集
これをコピーしたい
ラベルコンテナを配置し(たとえば、div
を追加しました)、スライドしたら更新します。
ライブバージョン: http://jsfiddle.net/8ek4a/5/
コード:
$(function() {
var labelArr = new Array("", "1 hour", "12 hours", "1 day", "3 day", "1 week");
$( "#slider" ).slider({
value:3,
min: 1,
max: 5,
step: 1,
slide: function( event, ui ) {
$( "#days" ).val( ui.value );
$("#label").html(labelArr[ui.value]);
}
});
$( "#days" ).val($( "#slider" ).slider( "value" ) );
$("#label").html(labelArr[$( "#slider" ).slider( "value" )]);
});
UPDATE:これで、インジケーターを実装するためのこのソリューションを思いつきました。 http://jsfiddle.net/8ek4a/6/ を参照してください
このコードを試すことができます
$(function() {
$("#slider-range").slider({
range: true,
min: 12,
max: 500,
values: [ 75, 300 ],
slide: function( event, ui ) {
$( "#amount" ).val( "$" + ui.values[ 0 ] + " - $" + ui.values[ 1 ] );
}
});
$( "#amount" ).val( "$" + $( "#slider-range" ).slider( "values", 0 ) + "- $" + $( "#slider-range" ).slider( "values", 1 ) );
});
これで、このプラグインを使用して値を表示できます
$(".slider").slider().slider("pips", {
first: "pip",
last: "pip"
}).slider("float");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<link href="https://code.jquery.com/ui/1.10.4/themes/flick/jquery-ui.css" rel="stylesheet"/>
<link href="https://raw.githubusercontent.com/simeydotme/jQuery-ui-Slider-Pips/master/dist/jquery-ui-slider-pips.min.css" rel="stylesheet"/>
<script src="https://code.jquery.com/ui/1.11.1/jquery-ui.js"></script>
<script src="https://raw.githubusercontent.com/simeydotme/jQuery-ui-Slider-Pips/master/dist/jquery-ui-slider-pips.js"></script>
<div class="slider"></div>