Str*_*ign 4 jquery jquery-ui jquery-ui-slider
我创建了一个 jQuery 价格滑块,但我不确定如何让过滤区域以实际价格范围开始?目前它有“ $[object Object] - $[object Object] ”,而我希望它有“ $299 - $1099 ”之类的东西。一旦开始移动滑块选择器,对象引用就会被正确的价格替换,但我希望过滤区域从一开始就具有正确的范围。
HTML:
<div id="slider-container"></div>
<p>
<label for="amount">Price range:</label>
<input type="text" id="amount" style="border: 0; color: #f6931f; font-weight: bold;" />
</p>
<div id="computers">
<div class="system" data-price="299">div1 - 299</div>
<div class="system" data-price="599">div2 - 599</div>
<div class="system" data-price="1099">div3 - 1099</div>
</div>
<div id="slider-range"></div>
Run Code Online (Sandbox Code Playgroud)
JavaScript:
$(function() {
$('#slider-container').slider({
range: true,
min: 299,
max: 1099,
values: [299, 1099],
slide: function(event, ui) {
$( "#amount" ).val( "$" + ui.values[ 0 ] + " - $" + ui.values[ 1 ] );
var mi = ui.values[ 0 ];
var mx = ui.values[ 1 ];
filterSystem(mi, mx);
}
});
$( "#amount" ).val( "$" + $( "#slider-range" ).slider( "values", 0 ) +
" - $" + $( "#slider-range" ).slider( "values", 1 ) );
});
function filterSystem(minPrice, maxPrice) {
$("#computers div.system").hide().filter(function() {
var price = parseInt($(this).data("price"), 10);
return price >= minPrice && price <= maxPrice;
}).show();
}
Run Code Online (Sandbox Code Playgroud)
我的结构基于以下代码: http ://jsfiddle.net/bZmJ8/32/
任何帮助是极大的赞赏。
创建选项是设置初始值的正确位置
$(function () {
$('#slider-container').slider({
range: true,
min: 299,
max: 1099,
values: [299, 1099],
create: function() {
$("#amount").val("$299 - $1099");
},
slide: function (event, ui) {
$("#amount").val("$" + ui.values[0] + " - $" + ui.values[1]);
var mi = ui.values[0];
var mx = ui.values[1];
filterSystem(mi, mx);
}
})
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18066 次 |
| 最近记录: |