6

私はこれを行う方法についての答えを探していましたが、それを理解できないようです(jquery uiテーマのドキュメントを見ても)。スライダーを左から右に動かすと、スライダー ノブの左側のセクションが (デフォルトのグレーではなく) オレンジに変わります。

jquery テーマ ロールは、以下の css を生成しました。おそらく .ui-widget-header background-color がこれを制御しますが、そうではないようです。他のクラスに背景色を追加することもありません。水平方向にスライドすると別の色になるように、これを修正する方法はありますか?

Jクエリ:

    $(document).ready(function(){

        $("#tasks_time").slider({
            value: 1,
            min: 0,
            max: 72,
            step: 1,
            slide: function() {
                update();
            }
        });

        $("#tasks_done").slider({
            value: 5,
            min: 0,
            max: 1000,
            step: 10,
            slide: function() {
                update();
            }
        });

HTML:

    Finish these items in <span id="curr-tasks_time" class="calc_number">1</span> hours

    <div id="tasks_time">
    </div>

CSS:

.ui-widget-content { border: 1px solid #ccc; background: #ff9900 url(images/ui-bg_flat_100_ff9900_40x100.png) 50% 50% repeat-x; color: #222222; }
.ui-widget-header { border: 1px solid #aaaaaa; background: #797979 url(images/ui-bg_highlight-soft_75_797979_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; }

.ui-slider { position: relative; text-align: left; }
.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; }
.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; }

.ui-slider-horizontal { height: .8em; }
.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; }
.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%;  }
.ui-slider-horizontal .ui-slider-range-min { left: 0;  }
.ui-slider-horizontal .ui-slider-range-max { right: 0;}

これが例です

よろしくお願いします。

4

4 に答える 4

16

例があります

http://jsfiddle.net/amkrtchyan/EAaLK/2/

そしてjqueryコード......

          $( "#tasks_time" ).slider({
                range: "min",
                value: 37,
                min: 1,
                max: 700,
                slide: function() {
                    update();
                }
            });
于 2012-01-04T09:02:09.983 に答える
4

 $(function() {
   $( "#slider" ).slider({
       min: 0,
       max: 100,
       slide: function( event, ui ) {
               		$("#slider").css('background', 'linear-gradient(90deg, #c75f04 		                                                   '+ui.value+'%, #cccccc 0%)');
                  $( "#price" ).val( "$" + ui.value);
               }
    });
            
});
<link href = "https://code.jquery.com/ui/1.10.4/themes/ui-lightness/jquery-ui.css"
         rel = "stylesheet">
<script src = "https://code.jquery.com/jquery-1.10.2.js"></script>
<script src = "https://code.jquery.com/ui/1.10.4/jquery-ui.js"></script>

<div id = "slider"></div><br>
Price : <input id="price">

于 2017-06-21T08:50:42.923 に答える
2

これを試して:

.ui-widget-content { background: purple; }

おまけとして、小さなドラッグ ハンドルの色を変更したい場合は、これを使用します。

.ui-widget-content .ui-state-default { background: chartreuse; }
于 2013-12-24T07:18:44.220 に答える