自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

「前篇」JavaScript如何獲取一個元素的樣式信息

開發(fā) 前端
關(guān)于JavaScript如何獲取一個元素的所有樣式值,及設(shè)置一個元素的樣式值,所有相關(guān)知識點,看這兩篇夠了。其實現(xiàn)代碼說難不難,說容易吧,這其中還真有一些需要特別清楚的地方,今天,我這里給大家簡單聊聊,將需要注意的地方全部捋出來。

關(guān)于JavaScript如何獲取一個元素的所有樣式值,及設(shè)置一個元素的樣式值,所有相關(guān)知識點,看這兩篇夠了。記住了,都很簡單的。來來來...

想要獲取一個元素的一個或者多個CSS樣式設(shè)置,這應(yīng)該是搞前端的都碰到過的一件事。如果你平時用JavaScript實現(xiàn)過一些動畫效果什么的??隙ň蜁酪粋€問題:元素內(nèi)聯(lián)樣式和動態(tài)設(shè)置的樣式容易獲取,但默認(rèn)樣式表設(shè)置的及用戶代理默認(rèn)設(shè)置的樣式獲取比較費勁。

其實現(xiàn)代碼說難不難,說容易吧,這其中還真有一些需要特別清楚的地方,今天,我這里給大家簡單聊聊,將需要注意的地方全部捋出來。

下面的講解用這個例子:

 

「前篇」JavaScript如何獲取一個元素的樣式信息

 

上面這個例子很簡單,看這篇文章的人沒有看不懂的,一個ID值為elem的DOM元素具有內(nèi)聯(lián)樣式和樣式表設(shè)置的默認(rèn)樣式。下面開始講重點

獲取內(nèi)聯(lián)和動態(tài)設(shè)置的樣式

獲取內(nèi)聯(lián)和動態(tài)設(shè)置的樣式方式有兩種

1. 直接訪問元素的style屬性

2. 使用getAttribute方法

一. 證明二者都無法獲得樣式表設(shè)置的樣式

有些結(jié)論可能好多人沒有證實過,模模糊糊。比如,上面提到的這兩種方式是否可以獲取樣式表設(shè)置的樣式,如font-size/background-color等。

 

  1. var elem = document.getElementById('elem'
  2. console.log(elem.style.fontSize) 
  3. // 無輸出 
  4. console.log(elem.getAttribute('style')) 
  5. // 輸出:height:30px; width:150px; 

二. 方式一需要注意的地方

直接訪問style對象的方式必須使用一種特殊的語法。

不帶連字符的屬性值,如width,可以直接訪問。

 

  1. elem.style.width 

帶連字符的屬性值,需要使用駱駝表示法。如background-color

 

  1. elem.style.backgroundColor 

三. 方式二需要注意的地方

使用方法來訪問style對象,然而你必須從字符串中解析出來。

使用setAttribute設(shè)置樣式時,之前動態(tài)樣式和內(nèi)聯(lián)樣式都會被重置。這一點也很好理解。因為它設(shè)置的是style。

當(dāng)然,使用getAttribute來訪問style屬性的時候,IE7也會返回一個對象,而不是帶有CSS值的一個字符串。

來簡單總結(jié)一下

上面說了兩種獲取動態(tài)樣式和內(nèi)聯(lián)樣式的方式及一些需要注意的地方。下一篇我來講一下如何使用一種跨瀏覽器方式同時獲取內(nèi)聯(lián)樣式,動態(tài)設(shè)置樣式,用戶代理以及樣式表設(shè)置的樣式。也是常用的一種方式。還有各自獲取的優(yōu)先級。

【責(zé)任編輯:龐桂玉 TEL:(010)68476606】

責(zé)任編輯:龐桂玉 來源: 今日頭條
相關(guān)推薦

2018-11-09 10:50:24

JavaScript前端

2009-06-09 21:50:55

Javascript函數(shù)getStyle

2015-03-10 11:21:44

JavaScript組JavaScript

2020-09-02 07:22:17

JavaScript插件框架

2024-06-06 08:46:26

彈性布局元素瀏覽器

2024-04-11 08:30:05

JavaScript數(shù)組函數(shù)

2015-06-25 19:23:03

JavaScript程序員

2015-06-25 09:53:13

JavaScript程序員

2021-05-07 14:17:01

JavaScript元素網(wǎng)頁

2025-02-25 11:12:53

JavaScriptHTML元素CSS

2011-05-25 14:34:26

javascript

2015-06-25 09:32:55

JavaScript程序員

2017-03-20 17:59:19

JavaScript模板引擎

2024-03-18 09:50:18

Selenium元素Python

2017-03-15 08:43:29

JavaScript模板引擎

2021-10-26 00:23:26

算法高頻元素

2014-02-14 09:37:01

JavascriptDOM

2018-09-18 10:11:21

前端vue.jsjavascript

2022-06-20 08:15:11

后端觀察者模板

2010-09-13 16:46:29

JavaScriptHTML DOM節(jié)點
點贊
收藏

51CTO技術(shù)棧公眾號