Wil*_*ent 1 javascript javascript-events
我想用我的脚本转换addEventListener与getElementById上var一个getElementByClassName但这不起作用。如何解决?
看我的代码
Javascript:
var input = document.getElementByClassName('myClass');
_slider.noUiSlider.on('update', function( values, handle ) {
var value = values[handle];
if ( handle ) {
input.value = Math.round(value);
});
input.addEventListener('change', function(){
_slider.noUiSlider.set([null, this.value]);
}, false);
Run Code Online (Sandbox Code Playgroud)
HTML:
<input type="number" class="myClass">
Run Code Online (Sandbox Code Playgroud)
如果我找到带有div的div,则此脚本可以完美运行ID,但不能使用CLASS。
没有getElementByClassName。有一个getElement 的 ByClassName返回一个集合。如果只有一个,则选择第一个索引。
var input = document.getElementsByClassName('myClass')[0];
Run Code Online (Sandbox Code Playgroud)
其他选项是querySelector
var input = document.querySelector('.myClass');
Run Code Online (Sandbox Code Playgroud)
我的猜测是,您没有一个元素而是多个元素,而不需要遍历集合。
var inputs = document.getElementsByClassName('myClass');
//or
//var inputs = document.querySelectorAll('.myClass');
for( var i=0; i<inputs.length; i++){
inputs[i].addEventListener("click", function() { console.log(this); } );
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1407 次 |
| 最近记录: |