我如何在输入范围内插入一个跟踪器?下面是我的代码=〉
const marker = document.createElement('div');
marker.classList.add('range-marker');
const range = document.getElementById('range');
range.appendChild(marker);
range.addEventListener('input', () => {
const percent = (range.value - range.min) / (range.max - range.min);
const pixels = percent * range.offsetWidth;
marker.style.left = `${pixels}px`;
});
.range-marker {
position: absolute;
top: -5px;
width: 100px;
height: 10px;
border-radius: 50%;
background-color: red;
z-index: 100;
}
<input type="range" id="range">
我不知道怎么弄的,但是不能用。没有错误...你能帮我修一下吗?
谢谢你。
1条答案
按热度按时间o2rvlv0m1#
你基本上需要把输入和范围标记放在一个 Package 器中,并使用范围标记上的绝对位置来定位红色跟踪器。这可以像下面这样实现。请注意,附加的div将进入 Package 器,而不是输入。