原生js獲取元素的class屬性(獲取class的所有元素)以及改變或添加calssName


今天在工作中,用到了設置className,因此查閱了一下資料,總結一下。

一、如何用原生js獲取class屬性

1 <div class = "dom'>
2 </div>

元素JS實現方法:

 1 function $class(domclass)
 2  {
 3      var odiv = document.getElementsByTagName("*");
 4      var aResult = []; //定義一個空數組,用來存放與目標className相同的元素
 5      for(var i = 0; i<odiv.length; i++)
 6      {//這個是遍歷頁面中所有元素然后拿他們的class進行對比。如果和我們傳進來的domclass這個參數一樣就把他放進數組 aResult中。
 7          if(odiv[i].className == domclass)
 8          {
 9              aResult.push(oDiv[i]);   //獲取到的元素推進數組中
10          }
11          return aResult;   //返回這個放進了domclass元素的數組
12      }
13  }
14 window.onload = function(){
15    alert($class('boom').length); //獲取這些元素的個數
16    alert($class('boom')[0].className); //獲取這些元素的第一個元素的className,其實都是一樣的className.
17 }

 

用這個函數來獲取就很簡單了只需要var d = $class("dom");

這個函數的意思是:
var odiv = document.getElementsByTagName("*");
這句意思是獲取頁面中所有的DOM元素 

二、js改變或添加className

1 <style type="text/css">
2 .newDiv {
3     font-weight: bold;
4 }
5 </style>
 1 <script>
 2 function clk() {
 3     var parent = document.getElementById("parent");
 4    // parent.className = parent.className + " newDiv";  //添加classname
 5 
 6    parent.className = " newDiv";  //改變classname
 7 
 8 }
 9 </script>
10 
11 </head>
12 <body>
13 <input type="button" value="click" onclick="clk();"/>
14 <div id="parent" class="google">
15     <div >child</div>
16 </div>
17 
18 </body>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM