JS獲取盒模型對應的寬高
阿新 • • 發佈:2019-02-15
技術分享 rec bsp 文件 etc ttr put window 獲取
## 獲取內聯樣式寬高
只能獲取內聯設置的樣式,在style或者.css文件中設置的無法獲取
1 let div = document.querySelect(‘.test‘); 2 let width = div.style.width 3 let height = div.style.height
## currentStyle和getComputedStyle獲取所有樣式
兩者只能獲取樣式,不能設置樣式
let div = document.querySelect(‘.test‘); let width; if (div.currentStyle) { width= div.currentStyle.width; } else { width = window.getComputedStyle(div, null).width; // width = window.getComputedStyle(div, null)[‘width‘]; // 第二個參數可選,省略或者null }
針對獲取任意樣式,可做兼容性處理方法:
1 function getStyle(element, attr) { 2 if(element.currentStyle) { 3 return element.currentStyle[attr];4 } else { 5 return getComputedStyle(element, false)[attr]; 6 } 7 }
至於 getBoundingClientRect()是獲取相對於視窗位置的集合, 可對應獲取寬高,大小, 位置。
1 let div = document.querySelector(‘.test‘); 2 let rectObject = div.getBoundingClientRect();
JS獲取盒模型對應的寬高