javascript - 同步 2 HTML 输入范围和数字
问题描述
嘿,我想同步 2 个输入,所以如果有人更改滑块,那么也应该更改数字输入,反之,我知道还有其他已回答的问题,但对我不起作用,因为不更改任何课程很重要names 或 ids 仅与滑块同步的数字输入,但也不是相反,我的代码是:
<div class="slidecontainer">
<input type="range" min="0.25" max="5" value="1" step="0.25" class="slider" id="playbackSpeed">
<input type="number" value="1" class="number" id="playbackSpeed" placeholder="1,0">
</div>
我的js是
document
.querySelector(".slider")
.addEventListener("input", updateValue);
document
.getElementsByClassName("number")
.addEventListener("input", updateValue);
function updateValue(e) {
var sibling =
e.target.previousElementSibling ||
e.target.nextElementSibling;
sibling.value = e.target.value;
}
解决方案
您甚至可以将整个内容缩短为:
const inputs=[...document.querySelectorAll("input")];
inputs.forEach((inp,i)=>inp.addEventListener("input",()=>
inputs[1-i].value=inputs[i].value )
)
<div class="slidecontainer">
<input type="range" min="0.25" max="5" value="1" step="0.25" class="slider" id="playbackSpeed">
<input type="number" value="1" class="number" id="playbackSpeed" placeholder="1,0">
</div>
推荐阅读
- c# - 当使用嵌套的 LambdaExpressions 编译 LambdaExpression 时,它们也会编译吗?
- terraform - 尝试使用堆栈输出列表作为模块输出
- javascript - 在跨度之间插入字符串变量
- css - Webpack(带有插件)是否可以缩小我的 CSS 文件,将其放在我的 dist 文件夹中,并将标签添加到 index.html
- javers - 有没有办法避免使用 Mongo 存储库在应用程序启动时创建索引?
- python - 如何检查大数据集Python中最大值的日期和时间
- python - 为什么我的 geopy 循环总是以 Killed: 9 结尾?
- java - 您可以从 CPD 检查中排除源文件吗?
- arrays - Swift 有内置的 isWord 函数吗?
- javascript - 使用 React 按下回车键时单击链接