2017-03-15 51 views
1

只是想知道如何設置jRange範圍選擇器上的值。jRange範圍選擇器設置值問題

下面的文檔說要做下面的代碼,雖然2個點似乎被固定在隨機點。

$('.range-slider').jRange({ 
    from: 0, 
    to: 36, 
    step: 0.25, 
    scale: [0, 6, 12, 6, 12, 6, 0], 
    format: '%s', 
    width: '100%', 
    showLabels: true, 
    isRange: true 
}); 
$('.range-slider').jRange('setValue', '20,26'); 
+0

所有你需要的是轉移你指的是,僅僅指我的回答位置和指數函數(只是想確保你看到的更新)。 – Neil

回答

1

我覺得你scale設置陣列是不正確的,它應該是[0, 6, 12, 18, 24, 30, 36]代替[0, 6, 12, 6, 12, 6, 0]

$('.range-slider').jRange({ 
 
    from: 0, 
 
    to: 36, 
 
    step: 0.25, 
 
    scale: [0, 6, 12, 18, 24, 30, 36], 
 
    format: '%s', 
 
    width: '100%', 
 
    showLabels: true, 
 
    isRange: true 
 
}); 
 
$('.range-slider').jRange('setValue', '20,26');
<link href="http://nitinhayaran.github.io/jRange/jquery.range.css" rel="stylesheet"/> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
 
<script src="http://nitinhayaran.github.io/jRange/jquery.range.js"></script> 
 
<div class="demo-output"> 
 
    <input class="range-slider" type="hidden" value="0.0" /> 
 
</div>

0

$('.range-slider').jRange('updateRange', '0,36','20,26');

,如果你想更新以及使用updateRange而不是範圍將滑塊的當前值,而不改變其範圍。

使用'updateRange'更改初始化後的(最小,最大)值和間隔 。

http://nitinhayaran.github.io/jRange/demo/接近底部!

+0

我不想改變我想設置的範圍,當滑塊加載時2個點將被定位。這是你的意思嗎? – Kiwimoisi

+0

這就是第二對數字是「0,36」,「20,26」。我認爲你只能在初始化思想後才能設置範圍。你可以切換插件的東西更多的選擇和更容易? :https://refreshless.com/nouislider/examples/ – Miro

0

你有多個重複的索引標量。而範圍只是計算1到36,忽略你所擁有的任何比例。 這僅用於顯示

但是,你可以寫一個函數來解決這個問題。

參見:

function getPos(i,lc) { 
 
\t return i + 12 * lc; 
 
} 
 

 
$('.range-slider').jRange({ 
 
    from: 0, 
 
    to: 36, 
 
    step: 0.25, 
 
    scale: [0, 6, 12, 6, 12, 6, 0], 
 
    format: '%s', 
 
    width: '100%', 
 
    showLabels: true, 
 
    isRange: true 
 
}); 
 
$('.range-slider').jRange('setValue', getPos(6,1) + "," + getPos(6,2));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> 
 
<link rel="stylesheet" href="http://neil.computer/stack/jquery.range.css"> 
 
<script src="http://neil.computer/stack/jquery.range-min.js"></script> 
 
<div class="range-slider"></div>