How to change the style of elements with same class name

后端 未结 3 1763
挽巷
挽巷 2020-12-18 15:43

Using javascript, I want to change the style of class .s into

.s {
  display: block;
}

Why this cannot work:

         


        
相关标签:
3条回答
  • 2020-12-18 16:06

    As getElementsByClassName returns an array you need to make a for loop over all found elements:

    var elements = document.getElementsByClassName('s');
    for (var i = 0; i < elements.length; i++) {
        elements[i].style.display = "block";
    }
    
    0 讨论(0)
  • 2020-12-18 16:14
    var sCls = document.getElementsByClassName('s');
    for(var i in sCls) {
        sCls[i].style.display='block';
    }
    

    this may work!

    0 讨论(0)
  • 2020-12-18 16:23

    document.getElementsByClassName: returns a set of elements which have all the given class names.

    You may have multiple elements with this class name. so you need to provide index like

    document.getElementsByClassName('s')[0].style.display='block';
    

    Inorder to apply for style for all elements with same class name:

    var ele = document.getElementsByClassName('s');
    for (var i = 0; i < ele.length; i++ ) {
        ele[i].style.display = "block";
    }
    
    0 讨论(0)
提交回复
热议问题