这是我的html代码
<input type="range" name="que1" min="0" max="100" value="0" class="slider" id="myRange">
它的javascript代码是
var slider = document.getElementById('myRange')
function onChange(event) {
var x = event.target.value
if (x == 0) {
slider.className = ''
} else if (x > 30 && x < 60) {
slider.className = 'MyClass-1'
} else if (x == 100) {
slider.className = 'MyClass-2'
}
}
slider.addEventListener('input', onChange)
当我拖动 slider 时,值会发生变化,但类不会根据值添加,它在 chrome 中完美运行,但在 Internet Explorer 11 中运行不佳。
有什么解决方案可以在 ie11 中实现吗?
最佳答案
根据 caniuse (参见“已知问题”),IE10 和 IE11 在鼠标操作时触发 change
,而不是 input
。因此,您需要处理 change
以及 input
。
slider.addEventListener('input', onChange)
slider.addEventListener('change', onChange) // For IE11
关于输入范围 slider 的 Javascript 代码在 Internet Explorer 11 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50887501/