输入范围滑块的Javascript代码无法在Internet Explorer 11中使用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了输入范围滑块的Javascript代码无法在Internet Explorer 11中使用相关的知识,希望对你有一定的参考价值。
这是我的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)
当我拖动滑块时,值会发生变化,但是类没有根据值添加,它在chrome中完美运行但在Internet Explorer 11中没有。
任何解决方案都可以在ie11中实现
答案
根据caniuse(参见“已知问题”),IE10和IE11在鼠标动作上发射change
,而不是input
。所以你需要处理change
以及input
。
slider.addEventListener('input', onChange)
slider.addEventListener('change', onChange) // For IE11
以上是关于输入范围滑块的Javascript代码无法在Internet Explorer 11中使用的主要内容,如果未能解决你的问题,请参考以下文章
在 Qualtrics 调查中,如何使用 JavaScript 动态设置滑块的范围?