Element對象能夠對屬性進行操做css
<body> <div id="d1"> <p>手機</p> <p id="p2">手錶</p> <p>電腦</p> </div> <script> /* Element對象也能夠對屬性進行操做 getAttribute:表示獲取指定元素的屬性值 setAttribute:表示對指定元素進行添加屬性 - 先寫屬性名,在寫屬性值 removeAttribute:表示對指定元素的指定屬性進行刪除 */ /* 先定位指定元素的位置 */ var p = document.getElementById( 'p2' ); console.log( p ); /* 獲取指定元素的屬性值 */ var ps = p.getAttribute( 'id' ); console.log( ps ); /* 對指定元素添加屬性 - 再添加時,先寫屬性名在寫屬性值 */ p.setAttribute( 'title', '123' ); /* 對指定元素刪除屬性 */ p.removeAttribute( 'title' ); </script> </body>
<body> <div id="d" style="width: 200px; height: 200px; border: 1px solid black"></div> <script> /* 經過節點方式獲取指定目標的CSS樣式 */ /* 定位指定元素節點 */ var div = document.getElementById( 'd' ); /* 獲取指定元素節點的屬性節點 */ var shuxing = div.getAttributeNode( 'style' ); console.log( shuxing );// 顯示 style="width: 200px; height: 200px; border: 1px solid black" /* 獲取指定屬性節點的屬性值 */ var style = shuxing.nodeValue; console.log( style );// 顯示 width: 200px; height: 200px; border: 1px solid black </script> </body>
<body> <div id="d" style="width: 200px; height: 200px; border: 1px solid black"></div> <script> /* 經過元素方式獲取指定目標的CSS樣式 */ /* 定位指定元素 */ var div = document.getElementById( 'd' ); /* 獲取指定元素的屬性 */ var style = div.getAttribute( 'style' ); console.log( style );// 顯示 width: 200px; height: 200px; border: 1px solid black </script> </body>
在DOM中HTMLElement對象提供了style屬性html
<body> <div id="d" style="width: 200px; height: 200px; border: 1px solid black"></div> <script> /* 在DOM中HTMLElement對象提供了style屬性 * 該屬性會返回一個對象 - CSSStyleDeclaration對象 * CSSStyleDeclaration對象封裝了全部CSS的樣式 */ /* 定位指定元素 */ var div = document.getElementById( 'd' ); /* 獲取指定元素的屬性樣式 */ var style = div.style; console.log( style );// 顯示 CSSStyleDeclaration{... ...} /* 獲取指定屬性的屬性值 */ console.log( style.width );// 顯示 200px </script> </body>
<head> <meta charset="UTF-8"> <title>獲取外聯樣式</title> <style> #p1 { color: red; } </style> </head> <body> <p id="p1">我特啊呦賭贏</p> <script> /* 能夠先定位<style>標籤的位置 */ var p1 = document.getElementsByTagName( 'style' )[0]; console.log( p1.textContent ); /* Document對象提供了styleSheets屬性 會獲得StyleSheetList對象(StyleSheetList對象中包含了CSSStyleSheet對象) */ var p2 = document.styleSheets; console.log( p2 ); /* 會獲得CSSStyleSheet對象 該對象提供了全部的CSS樣式(cssRules) */ var p3 = p2[0]; console.log( p3 ); /* 會獲得CSSRuleList對象 該對像表示存儲了當前外聯樣式的全部css樣式(CSSStyleRule) */ var p4 = p3.cssRules; console.log( p4 ); /* CSSStyleRule對象: cssText - 獲得CSS樣式內容以字符串形式表示 selectorText - 獲得CSS樣式的選擇器 style - 獲得CSSStyleDeclaration對象 */ var p5 = p4[0]; console.log( p5 ); </script> </body> </html>
<body> <p id="p1" style="color: red">啊啊啊啊啊啊</p> <script> /* 獲取當前有效樣式 - 注意樣式的優先級別 window.getComputedStyle():能夠獲取指定元素的當前有效樣式(有瀏覽器兼容問題) currentStyle:能夠做用在IE8版本的瀏覽器 */ var p = document.getElementById( 'p1' ); /* 獲取指定元素的當前有效樣式 */ var p1 = window.getComputedStyle( p ); console.log( p1.color ); var p2 = p.currentStyle; /* 解決兼容問題 */ if ( window.getComputedStyle ) { var p1 = window.getComputedStyle( p ); console.log( p1.color ); } else { var p2 = p.currentStyle; console.log( p2.color ); } </script> </body>
<body> <div id="d" style="width: 200px; height: 200px; border: 1px solid black"></div> <script> /* 經過Element對象對屬性進行設置 */ /* 定位指定元素 */ var div = document.getElementById( 'd' ); /* 經過setAttribute屬性對指定元素的屬性進行設置 */ div.setAttribute('style','width: 400px;height: 400px;border: 1px solid black'); </script> </body>
<body> <div id="d" style="width: 200px; height: 200px; border: 1px solid black"></div> <script> /* 經過HTMLElement對象對屬性進行設置 */ /* 定位指定元素 */ var div = document.getElementById( 'd' ); /* 經過style屬性對指定元素的屬性進行設置 */ var style = div.style; style.width = '600px'; </script> </body>
<head> <meta charset="UTF-8"> <title>class屬性的操做</title> <style> .d1 { width: 200px; height: 200px; background-color: lightcoral; } .d2 { width: 100px; height: 100px; background-color: yellowgreen; } </style> </head> <body> <div id="d" class="d1">Lorem ipsum dolor sit amet, consectetur adipisicing elit. A ad, asperiores delectus deleniti dicta eligendi exercitationem, fuga ipsa ipsam minus neque nihil non officiis provident, quidem quis reprehenderit velit vitae.</div> <script> /* 定位指定元素 */ var div = document.getElementById( 'd' ); /* 經過Element對象提供的方法來對class屬性進行設置 */ /* 獲取指定元素的class屬性 */ var attr = div.getAttribute('class'); console.log(attr); /* 對class屬性進行設置 */ div.setAttribute('class','d2'); </script> </body>
<head> <meta charset="UTF-8"> <title>class屬性的操做</title> <style> .d1 { width: 200px; height: 200px; background-color: lightcoral; } .d2 { width: 100px; height: 100px; background-color: yellowgreen; } </style> </head> <body> <div id="d" class="d1">Lorem ipsum dolor sit amet, consectetur adipisicing elit. A ad, asperiores delectus deleniti dicta eligendi exercitationem, fuga ipsa ipsam minus neque nihil non officiis provident, quidem quis reprehenderit velit vitae.</div> <script> /* 定位指定元素 */ var div = document.getElementById( 'd' ); /* 經過className來獲取指定元素的class屬性 */ var className = div.className; console.log( className );// 顯示 d1(class屬性值) /* 改變class的屬性值 */ div.className = 'd2'; </script> </body>
<head> <meta charset="UTF-8"> <title>class屬性</title> <style> .p1 { color: red; } .p2 { background-color: silver; } .p3 { color: green; } </style> </head> <body> <p class="p1">我特啊呦賭贏</p> <script> /* 能夠經過classList屬性和如下方法來對指定元素的設置 add():表示添加指定屬性值 remove():表示刪除指定屬性值 toggle():表示切換指定的屬性值 contains():表示檢測指定屬性值是否存在 - 存在爲true,不存在爲false */ var ps = p.classList; console.log( ps ); ps.add( 'p2' ); ps.remove( 'p1' ); ps.toggle( 'p3' ); ps.contains( 'p2' ) </script> </body>
<head> <meta charset="UTF-8"> <title>獲取寬和高</title> <style> #d1 { width: 100px; height: 100px; background-color: red; padding: 50px; margin: 50px; border: 20px solid black; overflow: auto; } #d2 { width: 500px; height: 100px; background-color: green; } </style> </head> <body> <div id="d1"> <div id="d2"></div> </div> <script> /* 獲取元素的寬度和高度 元素的寬和高(內邊距加內容區): 寬度 clientWidth = css樣式的寬度 + 內邊距(兩邊) - 滾動條的寬度 高度 clientHeight = css樣式的高度 + 內邊距(兩邊) - 滾動條的高度 內容區的寬和高: 寬度 scrollWidth = 內容的寬度 + 內邊距(單邊) 高度 scrollHeight = 內容的高度 + 內邊距(單邊、設置內容溢出是兩邊) 滾動部分的寬和高 - 內容的寬高超出元素的寬高 寬度 scrollLeft = 內容的寬度 - 元素的寬度 高度 scrollTop = 內容的高度 - 元素的高度 */ /* 定位指定元素的位置 */ var d = document.getElementById( 'd1' ); console.log( d ); /* 獲取指定元素的寬和高 */ console.log( d.clientWidth, d.clientHeight ); /* 獲取指定元素中內容區的寬和高 */ console.log( d.scrollWidth, d.scrollHeight ); /* 獲取指定元素滾動條的滾動部分的寬和高 */ console.log( d.scrollLeft, d.scrollTop ); /* 經過鼠標事件來獲取動態值 */ d.onscroll = function () { console.log( d.scrollLeft, d.scrollTop ); } </script> </body>