DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> JavaScript基礎知識 >> JavaScript如何獲取css屬性
JavaScript如何獲取css屬性
編輯:JavaScript基礎知識     

  在web開發中,很多時候我們需要用JavaScript對和網頁的樣式進行修改,接下來,我們就來看一下我們該如何訪問css屬性,針對不同情況及案例來進行分析。

 

情況一:css屬性位於html標簽內

  在實際開發過程中,如果樣式表的內容比較少的話,我們通常將css屬性封裝在html標簽中,這時JavaScript訪問css屬性很直接,通過訪問html標簽的style屬性,修改具體的樣式即可完成相應的操作。

  例如:

 <!DOCTYPE html>
 <html lang="zh-cn">
 <head>
     <meta charset="UTF-8">
     <title>styleTest</title>
 </head>
 <body>
 
 <div style="width: 200px;height: 200px; background: green;" id="mydiv"></div>
 <input type="button" value="test" onclick="test()">
 <script type=text/javascript>
     function test(){
         var mydiv=document.getElementById('mydiv');
         mydiv.style.background="red";         // id.style.屬性 執行相應的操作
     }
 </script>
     
 </body>
 </html>

  上述案例通過點擊按鈕,改變對應div的背景顏色。

 

情況二:css屬性在其他文件中

  當css樣式表不在html文件中,我們通常會在頭部引入css文件名,此時。此時如果我們使用情況一的方法訪問,則會發現失敗。原因就是此時相應的標簽沒有style這個屬性了,如果我們查看對應標簽的style時,會發現是undefined。所以我們需要使用新的方法來訪問其屬性,網上的方法有很多,在這裡我給出我所使用的方法。並給出相應的解釋,希望能幫助到大家。

  首先取得定義類的樣式表的引用,用document.styleSheet集合實現這個目的,這個集合包含HTML頁面中所以的樣式表,DOM為每個樣式表定義一個CSSRules的集合,這個集合中包含定義在樣式表中的所用css規則 (注意:Mozilla和Safari中是cssRulesIE中是rules)。

  具體如下:

  第①步:

    訪問獲取css文件 ( [0] 表示獲取的引入的第一個css文件)

 var icssrules=document.styleSheets[0].cssRules || document.styleSheets[0].rules;     // 兼容不同浏覽器

  第②步:

    獲取指定的css屬性  ( [0] 表示css文件中的第一個標簽的css樣式 )

 var style1=icssrules[0];  

  第③步:

    執行相應操作

 style1.style.background="red";

 

詳細代碼如下:

  html文件:

 <!DOCTYPE html>
 <html lang="zh-cn">
 <head>
     <meta charset="UTF-8">
     <title>styleTest</title>
     <link rel="stylesheet" href="style.css">
 </head>
 <body>
 
 <div id="mydiv"></div>
 <input type="button" value="test" onclick="test()">
 <script type=text/javascript>
     function test(){
         var mydiv=document.getElementById('mydiv');
         var icssrules=document.styleSheets[0].cssRules || document.styleSheets[0].rules;
         var style1=icssrules[0];
         style1.style.backgroundColor="red";
     }
 </script>
     
 </body>
 </html>

  外部css文件:

 #mydiv {
     width: 200px;
     height: 200px; 
     background: green;
 }

 

  實際效果截圖如下:

  點擊前:

            

   點擊後:

  通過兩種方式,可以修改相應的css樣式表。針對不同的情況可以借鑒不同的方法。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved