Существует несколько проблем с вашим кодом, как указано в комментариях:
- Опечатка в обработчике
slider.oniput
, должна быть slider.oninput
- Опечатка ) в строке
document.body.style.background
, где вы использовали silider
вместо slider
- Опечатка в значении
HEX
для одного из ваших цветов #2b22e43
, оно должно быть #2b22e4
Вот фиксированный пример:
var slider = document.getElementById("slider");
slider.oninput = () => {
var currValue = slider.value;
document.body.style.background = `linear-gradient(90deg, #2b22e4 ${currValue}%, #2b2e43 ${currValue}%, #ffffff ${currValue}.1%, #ffffff ${currValue}%)`;
};
<div>
<input type="range" id="slider" name="volume" min="0" max="11" />
<label for="slider">slider</label>
</div>
Не уверен, что это тот эффект, который вы ищете, но он работает. Не стесняйтесь настраивать его, когда вы sh.