jquery的height()和javascript的height總結,js獲取屏幕高度


jquery的各種高度

首先來說一說$(document)和$(window),如下:

$(document).height();//整個網頁的高度
$(window).height();//瀏覽器可視窗口的高度
$(window).scrollTop();//瀏覽器可視窗口頂端距離網頁頂端的高度(垂直偏移)

 

用一句話理解就是:當網頁滾動條拉到最低端時,

$(document).height() == $(window).height() + $(window).scrollTop()。

 

注意,是拉到最低端!

當網頁高度不足瀏覽器窗口時$(document).height()返回的是$(window).height()

假如您要獲取整個網頁的高度,不建議用$("html").height()、$("body").height()的高度,

原因:

$("body").height():body可能會有邊框,獲取的高度會比$(document).height()小; $("html").height():在不同的瀏覽器上獲取的高度的意義會有差異,說白了就是瀏覽器不兼容。

說道這里,提及邊框和margin還有padding,我們自然想到了jquery的另外的兩個高度,那就是innerHeight()和outerHeight()

innerHeight()和outerHeight()不適用於window 和 document對象,對於window 和 document對象可以使用.height()代替。innerHeight()和outerHeight()主要用來獲取標簽的高度。

innerHeight()

enter image description here

innerHeight:高度+補白 outerHeight:高度+補白+邊框,參數為true時:高度+補白+邊框+邊距

innerHeight(value)

這個“value”參數可以是一個字符串(數字加單位)或者是一個數字,如果這個“value”參數只提供一個數字,jQuery會自動加上像素單位(px)。如果只提供一個字符串,任何有效的CSS尺寸都可以為高度賦值(就像100px, 50%, 或者 auto)。注意在現代瀏覽器中,CSS高度屬性不包含padding, border, 或者 margin, 除非box-sizingCSS屬性被應用。

jquery高度,放到瀏覽器中試一下

alert($(window).height());                           //瀏覽器當前窗口可視區域高度
alert($(document).height());                        //瀏覽器當前窗口文檔的高度
alert($(document.body).height());                //瀏覽器當前窗口文檔body的高度
alert($(document.body).outerHeight(true));  //瀏覽器當前窗口文檔body的總高度 包括border padding margin
alert($(window).width());                            //瀏覽器當前窗口可視區域寬度
alert($(document).width());                        //瀏覽器當前窗口文檔對象寬度
alert($(document.body).width());                //瀏覽器當前窗口文檔body的寬度
alert($(document.body).outerWidth(true));  //瀏覽器當前窗口文檔body的總寬度 包括border padding margin

 

javascript的各種高度

網頁可見區域寬[僅針對body]: document.body.clientWidth
網頁可見區域高[僅針對body]: document.body.clientHeight
網頁可見區域寬[僅針對body]: document.body.offsetWidth (包括滾動條和邊框,若滾動條和邊框為0,則和clientWidth相等)
網頁可見區域高[僅針對body]: document.body.offsetHeight (包括滾動條和邊框,若滾動條和邊框為0,則和clientHeight相等)
可視窗口寬度(包括滾動軸寬度):window.innerWidth; //IE9+、Chrome、Firefox、Opera 以及 Safari
可視窗口高度,不包括瀏覽器頂部工具欄: window.innerHeight;//IE9+、Chrome、Firefox、Opera 以及 Safari
網頁正文全文寬(不包括滾動軸的寬度): document.body.scrollWidth
網頁正文全文高:document.body.scrollHeight
//假如網頁中沒有滾動軸,document.body.scrollWidth和window.innerWidth相等,document.body.scrollHeight和window.innerHeight相等。
網頁被卷去的高: document.body.scrollTop
網頁被卷去的左: document.body.scrollLeft
網頁正文部分上: window.screenTop
網頁正文部分左: window.screenLeft
屏幕分辨率的高(整個屏幕的高度): window.screen.height
屏幕分辨率的寬(整個屏幕的寬度): window.screen.width
屏幕可用工作區高度: window.screen.availHeight
屏幕可用工作區寬度: window.screen.availWidth
整個瀏覽器可用工作區高度: window.outerHeight
整個瀏覽器可用工作區寬度: window.outerWidth

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM