【javascript】原生js更改css樣式的兩種方式

下面我給你們介紹的是原生js更改CSS樣式的兩種方式:javascript

1經過在javascript代碼中的node.style.cssText="css表達式1;css表達式2;css表達式3  "的方式直接更改CSS樣式。css

2先在CSS樣式表中對特定的類如「active類」設置樣式(這裏的active類是假定的,暫時不存在),而後再在javascript代碼中經過node.classname="active"使得CSS樣式表中對active類的樣式設置附加到該node節點上來。html

下面是詳細介紹,首先是html的代碼:java

<style type="text/css">
           div {
float: left;
padding: 20px;
margin: 10px;
border: 1px solid #000;
background-color: #fff;
color: #000;
}
.active
{
background-color:blue
}
</style>
<body>
      <div class="root">
      </div>
</body>

 

只是一個簡單的div,運行結果爲
node

 

首先使用上面所說的第一種方式更改css樣式,寫入以下的javascript代碼:spa

<script type="text/javascript">  
           var root=document.getElementsByClassName("root")[0];
           root.style.cssText="background-color: blue;color: #fff;";
</script>

運行結果爲:code

而後使用上面所說的第二種方式更改css樣式,寫入以下的javascript代碼:htm

<script type="text/javascript">  
       var root=document.getElementsByClassName("root")[0];
           root.className="active";
</script>


一樣運行結果爲:blog

總結:這兩種方式結果相同,但就操做過程而言,第二種方式也就是「node.classname」的方式使得css和js的寫入分隔開來,顯然更加合理有序一些。若是css語句比較簡單的話,這兩種方式沒有差異,但若css語句比較複雜的話,顯然第二種方式比較有條不紊。ip

相關文章
相關標籤/搜索