前面的話

  既然有g(shù)etElementById()和getElementsByTagName()方法,為什么沒有g(shù)etElementsByClassName()呢?id屬性、標(biāo)簽名、class屬性并沒有什么優(yōu)劣之分啊。終于,HTML5新增了getElementsByClassName()方法,由于在CSS布局中類名的廣泛使用,該方法正好切中痛點(diǎn),使得通過類名選取元素不再麻煩,成為最歡迎的一個(gè)方法。接下來,本文將詳細(xì)介紹該方法

 

使用

  HTML元素的class屬性值是一個(gè)以空格隔開的列表,可以為空或包含多個(gè)標(biāo)識(shí)符。在javascript中class是保留字,所以使用className屬性來保存HTML的class屬性值

  getElementsByClassName()方法接收一個(gè)參數(shù),即一個(gè)包含一個(gè)或多個(gè)類名的字符串,返回帶有指定類的所有元素的類數(shù)組對象NodeList。傳入多個(gè)類名時(shí),類名的先后順序不重要。與getElementsByTagName()類似,該方法既可以用于HTML文檔對象,也可以用于element元素對象

  [注意]IE8-瀏覽器不支持

平面設(shè)計(jì)培訓(xùn),網(wǎng)頁設(shè)計(jì)培訓(xùn),美工培訓(xùn),游戲開發(fā),動(dòng)畫培訓(xùn)

<ul id="list">
    <li class="a ab c">1</li>
    <li class="a">2</li>
    <li class="ac">3</li>
    <li class="a b c">4</li>
    <li class="a b">5</li>
</ul>
<script>//類名中存在a成立Array.prototype.forEach.call(list.getElementsByClassName('a&
        
		

網(wǎng)友評(píng)論