1

スライダーのスケールのハンドルを作成して、スライダーの範囲を視覚的に確認したいと思います(たとえば、ほとんどのブラウザーのスクロールバーのように)。

少しグーグルしましたが、答えは.ui-slider-handleクラスを変更することのようです。

私はこれを実行し、ハンドルが最後から実行 されます。例 これは、スライダーを設定するために使用しているコードです。

var range = 2 + Math.floor(Math.random() * 10);

$('#slider').slider({max: range});

$('.ui-slider-handle').width($('#slider').width() / range);

また、実際の例へのリンクもあります:http: //tcusers.com/examples/6473423467/example.html

ライブラリがスライダーの古い幅を想定しているようですが、私が望むことを達成するための提案はありますか?jqueryuiコアライブラリをハックする必要はありません。

前もって感謝します

4

1 に答える 1

5

問題はスライダーのコアにあります。それを移動するために、jQueryUIはその「左」スタイルを0%から100%に変更します。元のスライドも終わりを超えていますが、狭いスライドなので気付かないでしょう。それを広くすると、左の100%から成長し始めることに本当に気づき始めます...

ここで読むことができるように:http://bugs.jqueryui.com/ticket/4398、組み込みのソリューションはありません。

しかし、彼らは次のような解決策を示しています。これは、ハンドルがスライダーの最小値からスライダーの最大値にスライドするときに、マージン左を可変的に(0とハンドル幅の間で)設定することによって行われます。

ここで:http://jquery-ui.googlecode.com/svn/trunk/demos/slider/side-scroll.html

主題に関するより多くの情報:

http://osdir.com/ml/jquery-ui/2009-03/msg00886.html

于 2012-01-12T12:55:26.770 に答える