正確的函數名是getElementsByClassName
,注意複數形式。
document.getElementsByClassName("example")[0].style.width = "50%";
//Just an example for how to set the property for the first element
//we have to iterate over that collection and set property one by one
此外,它會產生一個node list
,所以我們必須遍歷它來設置properties
它。
var elems = document.getElementsByClassName("example");
for(var i=0;i<elems.length;i++){
elems[i].style.width = "50%";
}
另請注意,node list
不是array
。它的數組像對象。人們通常把它們看作一個數組,他們會嘗試使用它的數組函數。這會導致錯誤。如果你想把它轉換成一個數組,那麼在EC6中有一個方便的函數,我們可以使用它。
var arr = Array.from(document.getElementsByClassName("example"));
上面的代碼將變換node list
到array
。
非常感謝你,你是正確的謝謝你謝謝你!我會在6分鐘限制通過後給你答案 – brigitte18
@ brigitte18請接受答案,如果它是你正在尋找的 –