javascript - 以不同颜色读取和显示滑块值的功能
问题描述
我在尝试创建一个读取从滑块获得的值然后根据其值以不同颜色显示它的函数时遇到了很多麻烦。
这是我到目前为止的代码:
function slider() {
document.getElementById("formControlRange").oninput = function() {
percentagem()
};
}
function percentagem() {
var val = document.getElementById("formControlRange").value document.getElementById('formOutput').innerHTML = val
if ($("#formControlRange").val() >=
50) {
$("#formOutput").addClass("alert-sucess");
} else {
$("#formOutput").addClass("alert-danger");
}
}
console.log(val)
}
<div class="form-row">
<div class="form-group col-md-6">
<label for="formControlRange">Com que percentagem recomendaria o Bootstrap a terceiros?</label>
<input type="range" class="form-control-range" id="formControlRange" onchange="slider()" min="0" max="100">
</div>
<div class="form-group col-md-6">
<h1><output id="formOutput" class=""></output></h1>
</div>
</div>
解决方案
如果您希望“alert-success”和“alert-danger”工作,您必须将“alert”类添加到您的元素中。并且每次值更改时都必须重置类。另外要小心分号和花括号。
function slider() {
document.getElementById("formControlRange").oninput = function() {
percentagem()
};
}
function percentagem() {
var val = document.getElementById("formControlRange").value;
document.getElementById('formOutput').innerHTML = val;
$("#formOutput").removeClass("alert-sucess alert-danger");
if ($("#formControlRange").val() >= 50) {
$("#formOutput").addClass("alert-success");
} else {
$("#formOutput").addClass("alert-danger");
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<div class="form-row">
<div class="form-group col-md-6">
<label for="formControlRange">Com que percentagem recomendaria o Bootstrap a terceiros?</label>
<input type="range" class="form-control-range" id="formControlRange" onchange="slider()" min="0" max="100">
</div>
<div class="form-group col-md-6">
<h1><output id="formOutput" class="alert"></output></h1>
</div>
</div>
推荐阅读
- python - 如何在 Pandas 列中拆分逗号分隔的单词列表?
- swift - 为什么我的 self.init 不会自动填充便利初始化程序?
- python - 如何将相同的值添加到字典中的不同键?
- java - 运行服务“Google Play 服务”使用大量 RAM
- r - 获取对 R 中的特定列具有相同值的所有行名
- java - 有没有办法在Java(类似LINQ)中创建另一个对象的集合?
- r - 如何使用 R 中的 ets() 或 holt() 函数复制 Excel 2016 forecast.ets 的结果?
- python - 有没有办法为本地文件生成 URL?
- css - 如何避免 BEM 中相同类名的冲突?
- sql - Web 服务帐户的权限