2009-10-07 15 views
11

複数のレンダリングハンドルをサポートするJquery UIスライダのプラグインを探しています。既存のJquery UIスライダは、1つの範囲の値セットのみをサポートします。私はあなたがmuliple範囲を持つことができるスライダーを探しています。そのため、内側の範囲の範囲、またはオーバーラップしない2つの範囲です。「複数の範囲のハンドル」をサポートするJqueryスライダのプラグイン

例:

R =扱う

XX =スライダーバー

=または - =レンジハンドル

XXR1間------ R1XXXR2 - R2XXXXXXXXX

XXXR1 ---- R2 ==== R2 ----- R1XXXXXX

XXXR1-R2 === R2 --- -R3 === R3 - R1XXXX

私はそこにこれを行うことができるスライダーがないと思いますか?私が行く前に確かめたいと思っていました。

+0

あなたが複数のスライダ(各範囲に1つ)を使用することはできません、特定の理由はありますか?このために、それらを使用して他を束縛することができます。したがって、一方が外側の範囲であれば、他方は外側で設定された制限を超えてスライドできません。 – cdeszaq

答えて

4

ここで私はそれをしました。

myarr = [ 65, 80, 90 ]; 
$(function() { 
    $("#slider-range").slider({ 
     min: 0, 
     max: 100, 
     values: myarr, 
     slide: function(event, ui) { 
      if (ui.values[0] >= ui.values[1]) { 
       return false; 
      } 
      if (ui.values[1] >= ui.values[2]) { 
       return false; 
      } 
      $(this).find(".range0").css({ "width": ui.values[0] + "%" }); 
      $(this).find(".range1").css({ "left": ui.values[0] + "%", "width": (ui.values[1]-ui.values[0]) + "%" }) ; 
      $(this).find(".range2").css({ "left": ui.values[1] + "%", "width": (ui.values[2]-ui.values[1]) + "%" }) ; 
      $(this).find(".range3").css({ "left": ui.values[2] + "%", "width": (100-ui.values[2]) + "%" }) ; 
     }, 
     create: function(event, ui) { 
       $(this).append('<div class="ui-slider-range ui-widget-header range0" style="left: 0%; width: ' + myarr[0] + '%; background: none repeat scroll 0% 0% #CF1920;"></div>'); 
       $(this).append('<div class="ui-slider-range ui-widget-header range1" style="left: ' + myarr[0] + '%; width: ' + (100-myarr[1]) + '%; background: none repeat scroll 0% 0% #FFE900;"></div>'); 
       $(this).append('<div class="ui-slider-range ui-widget-header range2" style="left: ' + myarr[1] + '%; width: ' + (100-myarr[2]) + '%; background: none repeat scroll 0% 0% #26CF2D;"></div>'); 
       $(this).append('<div class="ui-slider-range ui-widget-header range3" style="left: ' + myarr[2] + '%; width: ' + (100-myarr[2]) + '%; background: none repeat scroll 0% 0% #00BCFF;"></div>'); 
     } 
    }); 
}); 

それがより最適化することができますが、これはあなたに私はこの正確なニッチを埋めるためにElessarをリリースしてきた一般的な考え方

9

を与えるべきであることを確認イム。 colResizableは問題ありませんが、それは実際に仕事に適したツールではありません。

+1

これは素晴らしいです! –

+1

@Matt Brennan私はこれが本当に好きですが、私はギャップなしで1つ必要です...そして、最初の範囲は固定する必要がありますか?ありがとう! – tim

+0

@tim、Elessarでは現在私は恐れています。固定範囲はロードマップ上にありますが、現在の設計ではギャップを取り除くのは難しいでしょう。 –

関連する問題