JS基礎_獲取元素的樣式
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
#box1{
width: 100px;
height: 100px;
background-color: yellow;
}
</style>
<script type="text/javascript">
window.onload = function(){
//點選按鈕以後讀取box1的樣式
var box1 = document.getElementById("box1");
var btn01 = document.getElementById("btn01");
btn01.onclick = function(){
/*
* 獲取元素的當前顯示的樣式
* 語法:元素.currentStyle.樣式名
* 它可以用來讀取當前元素正在顯示的樣式
* 如果當前元素沒有設定該樣式,則獲取它的預設值
*
* currentStyle只有IE瀏覽器支援,其他的瀏覽器都不支援
*/
//alert(box1.currentStyle.width);
//box1.currentStyle.width = "200px";
//alert(box1.currentStyle.backgroundColor);
/*
* 在其他瀏覽器中可以使用
* getComputedStyle()這個方法來獲取元素當前的樣式
* 這個方法是window的方法,可以直接使用
* 需要兩個引數
* 第一個:要獲取樣式的元素
* 第二個:可以傳遞一個偽元素,一般都傳null
*
* 該方法會返回一個物件,物件中封裝了當前元素對應的樣式
* 可以通過物件.樣式名來讀取樣式
* 如果獲取的樣式沒有設定,則會獲取到真實的值,而不是預設值
* 比如:沒有設定width,它不會獲取到auto,而是一個長度
*
* 但是該方法不支援IE8及以下的瀏覽器
*
* 通過currentStyle和getComputedStyle()讀取到的樣式都是隻讀的,
* 不能修改,如果要修改必須通過style屬性
*/
var obj = getComputedStyle(box1,null);
alert(getComputedStyle(box1,null).width);
//正常瀏覽器的方式
alert(getComputedStyle(box1,null).backgroundColor);
//IE8的方式
alert(box1.currentStyle.backgroundColor);
var w = getStyle(box1,"width");
alert(w);
};
};
/*
* 定義一個函式,用來獲取指定元素的當前的樣式
* 引數:
* obj 要獲取樣式的元素
* name 要獲取的樣式名
*/
function getStyle(obj , name){
if(window.getComputedStyle){
//正常瀏覽器的方式,具有getComputedStyle()方法
return getComputedStyle(obj , null)[name];
}else{
//IE8的方式,沒有getComputedStyle()方法
return obj.currentStyle[name];
}
//return window.getComputedStyle?getComputedStyle(obj , null)[name]:obj.currentStyle[name];
}
</script>
</head>
<body>
<button id="btn01">點我一下</button>
<br /><br />
<div id="box1" ></div>
</body>
</html>
相關文章
- JS 獲取文件元素JS
- 封裝js獲取當前元素的弟弟元素節點封裝JS
- js動態建立元素,並控制元素樣式JS
- iframe的操作-Js/Jquery獲取iframe中的元素JSjQuery
- JS陣列at函式(獲取最後一個元素的方法)介紹JS陣列函式
- 『與善仁』Appium基礎 — 22、獲取元素資訊的操作(一)APP
- JS獲取元素寬高的兩種情況JS
- 用 js 獲取頁面元素的位置圖文總結JS
- [譯] 使用 closest() 函式獲取正確的 DOM 元素函式
- Javascript 獲取 Dom 樣式的方法有哪些JavaScript
- JS 不使用 for forEach 獲取兩陣列中重複的元素JS陣列
- 寫一個獲取非行間樣式的方法
- js獲取iframe和父級之間元素,方法、屬,獲取iframe的高度自適應iframe高度JS
- 短視訊app製作,js獲取日期、時間、星期多種樣式APPJS
- Appium Android 獲取WebView元素的方法APPAndroidWebView
- Revit獲取元素的巢狀族巢狀
- Flutter 樣式基礎之 PaddingFlutterpadding
- Flutter 樣式基礎之 MediaQueryFlutter
- Flutter 樣式基礎之 MediaQueryDataFlutter
- jQuery 基礎樣式篇(2)jQuery
- JavaScript獲取父元素下子元素節點JavaScript
- JS基礎:正規表示式JS
- JS 基礎篇(七):JS中的遍歷函式JS函式
- jquery獲取元素節點jQuery
- dom元素操作獲取等
- 分散式快取基礎教程分散式快取
- 滑鼠滑過和獲取焦點樣式
- Linux基礎(一):獲取LinuxCPU資訊Linux
- Cypress 基礎 - 元素的定位
- js獲取日期JS
- 獲取當前元素在兄弟元素節點中的索引索引
- Linux基礎命令---mirror獲取ftp目錄LinuxFTP
- Linux基礎命令---mget獲取ftp檔案LinuxFTP
- Linux基礎命令---get獲取ftp檔案LinuxFTP
- tab-switch 樣式的新增 與 tab元素樣式的切換
- 列表樣式的使用-CSS入門基礎(018)CSS
- canvas—元素樣式設定Canvas
- 【WEB基礎】HTML & CSS 基礎入門(4)列表及其樣式WebHTMLCSS