首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何根据noUiSliders当前的值更改其颜色?

如何根据noUiSliders当前的值更改其颜色?
EN

Stack Overflow用户
提问于 2016-11-22 00:29:52
回答 1查看 1.1K关注 0票数 3

因此,我为我的滑块创建了一些自定义颜色类,它的工作原理是well...this:

我所做的只是创建了以下类:

代码语言:javascript
复制
.red .noUi-connect {
  background: #c0392b;
}

.orange .noUi-connect {
  background: #2980b9;
}

.green .noUi-connect {
  background: #27ae60;
}

把它们应用到我的div上如下:

代码语言:javascript
复制
<div id="slider-speed" class="slider red"></div>
<div id="slider-speed" class="slider orange"></div>
<div id="slider-speed" class="slider green"></div>

但是,我想要做的是,每当用户向左或向右移动滑块时,滑块的颜色就会根据该值发生变化。

所以1-3=红色,4-6=橙色,7- 10 =绿色.

我该怎么做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-22 01:13:59

您可以尝试使用事件回调来“更新”,如下所示:

代码语言:javascript
复制
slider.noUiSlider.on('update', function(values, handle){
  updateColorClass(document.getElementById('slider-speed'), values[handle]);
});

function updateColorClass(element, value) {
  var color;
  if (value < 4) { 
    color = 'red';
  } else if (value < 7) { 
    color = 'orange';
  } else {
    color = 'green';
  }

  element.classList.remove("red", "orange", "green");
  element.classList.add(color);
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40731907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档