首页 > 解决方案 > 具有负值的 HTML 输入类型范围(滑块)

问题描述

我正在使用滑块<input type="range" />

它适用于正值(最小值:20,最大值:90,步长:15),但我不知道如何处理负值。
你能帮助我吗?

截屏

查看和修改我的沙箱(只是一个普通的 HTML 和 JS)

标签: javascripthtmlhtml-inputhtml-input-element

解决方案


将最小值设置为-80并添加padding-left到滑块,让用户认为这-90是最小值。

const sliders = document.querySelectorAll("input[type=range]");

for (const slider of sliders) {
  slider.addEventListener('change', (e) => {
    e.target.nextElementSibling.value = e.target.value;
  });

  slider.nextElementSibling.value = slider.value;
}
input {
  padding-left: 15px;
}
<input type="range" min="-80" max="-20" step="15" />
<output></output>


推荐阅读