国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

原生JS實現獲取及修改CSS樣式的方法

2019-11-19 13:02:43
字體:
來源:轉載
供稿:網友

本文實例講述了原生JS實現獲取及修改CSS樣式的方法。分享給大家供大家參考,具體如下:

大家都知道在JavaScript原生操作中獲取元素的樣式,在實際操作是使用時比較頻繁的一件事,這里像大家介紹下獲取css樣式的方法,希望可以幫助一些需要的人,如果有幸被大牛看到,有更好的辦法,歡迎提出!!!

一、行內元素樣式獲取:

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <title>js獲取外部樣式</title></head><body>  <div id="div" style="width:200px;height:200px;border:3px solid cyan;"></div></body><script>  //獲取行間樣式  var div = document.getElementById('div');  var width = div.style.width;  alert(width);//200px</script></html>

在JS代碼中,alert會彈出div元素的width為200px;達到了要獲取元素寬度的目的,但是這種簡單的方法只適用于獲取元素的行內元素樣式,并不能獲取內部樣式和外部樣式,在項目中,寫入行內元素這種方案并不被大家認同,所以這種方法,只是讓大家了解下。

二、非行間樣式元素獲取:

如果元素樣式并非行間樣式,利用上面這種方法并不能獲取到元素的樣式,需要使用另一種方法:

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <title>js獲取內部部樣式</title>  <style>    #div{      width: 200px;      height: 200px;      border:3px solid cyan;    }  </style></head><body>  <div id="div""></div></body><script>  var div = document.getElementById('div');  //獲取div的width  var width = window.getComputedStyle(div,null).width;  alert(width);//200px  //修改div的width  div.style.cssText='width:300px;'</script></html>

在上面代碼中,使用了window.getComputedStyle('元素',null).'樣式',此方法兼容性:火狐 谷歌 IE9 獲取的為計算后的樣式,但是這里需要注意的是用此方法獲取的值為只讀模式,并不能修改,所以用了style.cssText方式修改了其屬性,這里需要注意下書寫方式.

三、兼容性:

前段潛規則,凡是好的東西都不能通用,是的,你猜對了,任性的IE并不能使用以上方法,但是IE有自己的方法為currentStyle,用法一樣,就不再贅述了,下面直接寫出已經處理兼容的代碼如下:

var div = document.getElementById('div');if (div.currentStyle) {  console.log(div.currentStyle.width);}else{  console.log(getComputedStyle(div,null).width);}

方法封裝:

function getStyle(obj,name){  if (obj.currentStyle) {    return obj.currentStyle[name];  }else{    return getComputedStyle(obj,false)[name];  }}

上述代碼感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具http://tools.VeVB.COm/code/HtmlJsRun測試運行一下,看看運行結果如何。

更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript事件相關操作與技巧大全》、《JavaScript頁面元素操作技巧總結》、《JavaScript操作DOM技巧總結》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》及《JavaScript數學運算用法總結

希望本文所述對大家JavaScript程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 稻城县| 延安市| 武川县| 平阳县| 彭州市| 大洼县| 河北区| 德州市| 临朐县| 平乡县| 广宁县| 鲁甸县| 曲阳县| 钟山县| 永新县| 日照市| 牙克石市| 杭锦后旗| 诸暨市| 桑日县| 安庆市| 东方市| 巍山| 双峰县| 林芝县| 龙井市| 左云县| 上林县| 安化县| 同德县| 集安市| 东城区| 大兴区| 大邑县| 鄂托克前旗| 克拉玛依市| 克什克腾旗| 石台县| 枞阳县| 运城市| 通州区|