javascript - 如何更改 Bootstrap slider 中选定部分的颜色

标签 javascript html css bootstrap-slider

您好,我使用的是链接 Change color of selected section in bootstrap slider 中演示的同一个应用程序.即使在我使用相同的之后,我也无法继续。您能否看到并让我知道我犯错的解决方案。我已将必要的 .js 和 .css 文件下载到我的系统中,并在我的 html 页面中引用它们。我正在使用这个 slider 来提供反馈。很少有问题会跟随 1 到 10 的 10 个选项。当用户选择 1 到 5 时, slider 应显示“红色”颜色(OK),当它在 6 到 8 之间时显示“橙色”(好)和 9 到 10 “绿色”(优秀)。请找到我下面的代码并帮助我。提前致谢

<script src="js/jquery.min.js"></script>
<script src="js/bootstrap-slider.js"></script>
<link href="js/bootstrap-slider.css" rel="stylesheet">
<link href="js/bootstrap.min.css" rel="stylesheet">

<style>
#score .slider-selection {
    background: yellow;
}
</style>

<script>
    var r = $('#score').slider()
        .on('slideStart', RGBChange)
        .data('slider');

    var RGBChange = function() {
        alert("called");
        if(r.getValue() >= 1 && r.getValue() <=5 ){
        $('.slider-selection').css('background', 'red');
        document.getElementById("lbl").value = r.getValue();
        }
        else if(r.getValue() > 5 && r.getValue() <=8 ){
        $('.slider-selection').css('background', 'orange');
        document.getElementById("lbl").value = r.getValue();
        }
        else if(r.getValue() >= 1 && r.getValue() <=5 )
    };
</script>

<input
    type="text"
    Id = "score"
    name="scoreSlide"
    data-provide="slider"
    data-slider-ticks="[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]" 
    data-slider-ticks-labels='["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]' 
    data-slider-min="1"
    data-slider-max="10"
    data-slider-step="1"
    data-slider-value="3",
    data-slider-tooltip="hide"
    /><br>
    <input type="text" ID="lbl" />

最佳答案

下面的代码完成了您的要求。但是,我认为浅蓝色 handle /按钮看起来不太好。

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.3/jquery.min.js"></script>
    <script src="http://seiyria.com/bootstrap-slider/js/bootstrap-slider.js"></script>
    <link href="http://seiyria.com/bootstrap-slider/css/bootstrap-slider.css" rel="stylesheet">
    <link href="http://seiyria.com/bootstrap-slider/dependencies/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<input
type="text"
Id = "score"
name="scoreSlide"
data-provide="slider"
data-slider-ticks="[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]" 
data-slider-ticks-labels='["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]' 
data-slider-min="1"
data-slider-max="10"
data-slider-step="1"
data-slider-value="3"
data-slider-tooltip="hide"
/>
<input type="text" id="lbl" />
<script>
var r = $('#score').slider()
    .on('slideStop', function(ev){
    var value = r.getValue();
        if(value >= 1 && value <= 5){
            $('.slider-selection').css('background', 'red');
        }
        else if(value > 5 && value <= 8) {
            $('.slider-selection').css('background', 'orange');
        }
        else if(value > 8 && value <= 10) {
            $('.slider-selection').css('background', 'green');
        }
        $('#lbl').val = value;
    })
    .data('slider');
</script>
</body>
</html>

关于javascript - 如何更改 Bootstrap slider 中选定部分的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40582330/

相关文章:

javascript - 获取 child 的短信

html - 使叠加层上的文本变白

javascript - 如何禁用按钮

Javascript print() 方法不起作用

javascript - 在通过 javascript 切换 dijit 小部件的 'disabled' 属性时刷新 css

html - text-overflow : ellipsis working on IE11 Win7 but not IE11 Win8, 这是已知行为吗?

html - 只有一个标签选择显示在 html 中

javascript - 为什么 2 个 parseFloat 变量的总和给我一个不正确的十进制数

JavaScript 根据输入文本计算输入值

javascript - 为什么 CSS matrix3d 比 CSS position 渲染得更快?