JS and Jquery 都能獲取頁面元素的寬度,高度和相對位移等數值,那他們之間能相互轉換或替代嗎,寫法又有哪些差異呢?本文將詳細為你介紹。 1.Js獲取瀏覽器高度和寬度document.documentElement.clientWidth ==> 瀏覽器可見區域寬度 document.doc
JS and Jquery 都能獲取頁面元素的寬度,高度和相對位移等數值,那他們之間能相互轉換或替代嗎,寫法又有哪些差異呢?本文將詳細為你介紹。
1.Js獲取瀏覽器高度和寬度
document.documentElement.clientWidth ==> 瀏覽器可見區域寬度
document.documentElement.clientHeight ==> 瀏覽器可見區域高度
document.body.clientWidth ==> BODY對象寬度
document.body.clientHeight ==> BODY對象高度
Jq獲取瀏覽器高度和寬度
$(window).width() ==> 瀏覽器可見區域寬度
$(window).height() ==> 瀏覽器可見區域高度
$(document).height() ==> 頁面文檔的高度
$(document.body).height() ==> BODY對象高度
2.Js獲取對象的高度和寬度
obj.width = obj.style.width
obj.clientWidth = width + padding ==> 獲得包括內邊界(padding)的元素寬度
obj.offsetHeight = height + padding + border ==> 獲得包括內邊界(padding)和邊框(border)的元素高度
Jq獲取對象的高度和寬度
obj.innerWidth() ==> 獲得包括內邊界(padding)的元素寬度,
obj.outerWidth() ==> 獲得包括內邊界(padding)和邊框(border)的元素寬度
obj.outerWidth(true) ==> 獲得包括外邊界(margin)的元素寬度
w同一個元素應該是:width()<=innerWidth()<=outerWidth()<=outerWidth(true);
3.Js 獲取對象的相對高度和寬度
obj.offsetLeft ==> 元素相對於父元素的left
obj.offsettop ==> 元素相對於父元素的top
obj.scrollWidth ==> 獲取對象的滾動寬度
obj.scrollHeight ==> 獲取對象的滾動高度
obj.scrollLeft ==> 設置或獲取位於對象左端滾動的距離
obj.scrollTop ==> 設置或獲取位於對象頂端滾動的距離
Jq 獲取對象的相對高度和寬度
obj.offset().left ==> 元素相對於文檔的left
obj.offset().top ==> 元素相對於文檔的top
obj.scrollLeft() ==> 設置或返回對象相對滾動條左側的偏移。
obj.scrollTop() ==> 設置或返回對象相對滾動條頂部的偏移。