我理解可以通过执行以下操作将从最小值到当前滑块选择的值的背景颜色设置为:
#slider .ui-slider-range { background: #88ac0b; }
如何设置整个滑块(不仅仅是从最小值或最大值到所选值)的背景颜色?
我尝试了其他答案,但是它们似乎都不能单独解决问题。以下方法可以让滑块的范围和剩余部分颜色相同:
$( "#my-slider" ).css('background', 'rgb(0,255,0)');
$( "#my-slider .ui-slider-range" ).css('background', 'rgb(0,255,0)');
jQuery UI CSS应用了一个图像,它隐藏了应用于滑块元素的任何背景颜色。在加载jQuery CSS后,在您自己的样式中简单地指定background-image为none即可。 我正在尝试根据ui.value动态设置ui-slider-range(每个HTML页面上的滑块)的颜色,但在创建滑块时在slide选项中设置它并不成功。
如果您还有其他UI元素,那么这似乎可能会影响它们,但在我的情况下并不是问题,这个方法有效:
.ui-widget-content { background: purple; }
作为奖励,如果您想改变小拖动手柄的颜色,请使用以下代码:
.ui-widget-content .ui-state-default { background: chartreuse; }
这里提供的颜色方案仅供演示使用。:)
注意:我是通过以下步骤在Chrome中找到解决方案的:
background-color
,并用小三角展开它jquery-ui.css:62
)以查看相关的css行希望这些值对后来阅读此主题的人有所帮助。 这些设置是在jQuery Slider中使用的,其中有两个滑块。祝好。
#slider-container {width:200px;}
#slider-container #slider-min-value {float:left;margin-top:6px;}
#slider-container #slider-max-value {float:right;margin-top:6px;}
通用滑块背景
#slider-container .ui-widget-content { border: 1px solid #aaaaaa; background: #dfe5e7;}
在两个标记颜色之间
#slider-container .ui-widget-header { border: 1px solid #aaaaaa; background: #00caff; }
标记
#slider-container .ui-state-default { border: 1px solid #aaaaaa; background: #ffffff; }
#slider-container .ui-state-default { background-image: url('slider-button.png'); }
为了实现您的目的,您需要使 jQuery 滑块的背景透明,并直接在容器元素中设置背景颜色。示例如下:
#slider{ background: #88ac0b; }
.ui-slider-range { background: transparent; }
这将会设置滑块的背景颜色为你所选择的颜色,并覆盖任何jQuery滑块CSS颜色。
我还没有看过,但我猜想:
#slider {background-color: #f00; /* or whatever colour you want */ }
会有用。假设 #slider
元素是我认为的那个。
抱歉这么久才回复,看了看 jQueryUI 的演示(特别是颜色选择器:http://jqueryui.com/demos/slider/#colorpicker),似乎通过附加到元素的其他类应用 background-color
属性。
将类从 ui-slider-range
改为 ui-slider-range-max
似乎很有希望,但什么也没有实现(除了可能明显的翻转彩色区域)。
这很奇怪。
CSS:
与类一起使用:
.ui-widget-content .sliderTestClass { background: #000000; }
或者与ID一起使用:
#mySlider { background: #000000; }
JavaScript:
$('#mySlider').slider({
min: -1,
max: 1,
value: 0,
step: 0.1,
slide: function () {
// do stuff
}
});
HTML:
<div id="mySlider" class="sliderTestClass"></div>
.ui-slider {
background: #88ac0b;
}
将会给所有滑块的整个范围着色。 必要时进行限制。
#slider-range{
background-color: rgba(187,145,19,0.2);
background-image: none;
}
HTML
<div id="slider-range" style="width:430px;"></div>
解决方法是在设置自己的颜色之前将背景图像设置为无。使用Chrome的元素检查找到类名!