addEventListener用于使用类选择它们的许多元素

时间:2016-02-04 00:00:31

标签: javascript

我不明白为什么当我点击这些元素点击打开这个功能下面这个功能不起作用我试图做一个像手风琴的

document.getElementsByClassName('click-to-open').addEventListener('click', function(){
                document.getElementsByClassName('click-to-open').style.maxHeight = '40px';
                this.style.maxHeigh = '500px';
            });

1 个答案:

答案 0 :(得分:1)

试试这个:

var clickToOpen=document.getElementsByClassName('click-to-open');

for(var i=0;i<clickToOpen.length;i++){
     clickToOpen[i].addEventListener('click', function(){
                        this.style.maxHeight = '500px';
                    });
}

方法getElementsByClassName()总是返回一组类数组,如果你想要遍历所有需要遍历所有DOM元素的DOM元素,如果你使用的是Jquery,那么有一种更优雅的方法可以做它

这是一个演示:https://jsfiddle.net/2tx2s3rz/2/显示代码