$(window).width()與window.innerWidth的區別

window.innerWidth能獲得什麼數據?

在自適應設計中,需要用js來判斷瀏覽器寬度,從而調整網頁寬度和佈局,我一開始用的是window.innerWidth。

window.innerWidth能獲取當前窗口的寬度(包含滾動條),當瀏覽器寬度調整時,這個值也會跟着變化。

但是,window.innerWidth在IE8瀏覽器是無效的。所以,需要使用一個代替品,那就是$(window).width()。

$(window).width()與window.innerWidth有什麼區別?

$(window).width()也是獲得瀏覽器寬度的方法,但它跟window.innerWidth是不同的。

1)$(window).width()需要引用jquery.js文件,它是jquery方法。而window.innerWidth是js方法,不需要引用jquery.js文件。

2)它們獲取的數值是不同的,window.innerWidth獲取當前窗口的寬度(包含滾動條),$(window).width()獲取當前窗口的寬度(不包含滾動條)。看下圖所示:


$(window).width()與window.innerWidth的區別

知識擴展

Javascript、Jquery獲取瀏覽器和屏幕各種高度寬度

Javascript:

alert(document.body.clientWidth);        //網頁可見區域寬(body)

alert(document.body.clientHeight);       //網頁可見區域高(body)

alert(document.body.offsetWidth);       //網頁可見區域寬(body),包括border、margin等

alert(document.body.offsetHeight);      //網頁可見區域寬(body),包括border、margin等

alert(document.body.scrollWidth);        //網頁正文全文寬,包括有滾動條時的未見區域

alert(document.body.scrollHeight);       //網頁正文全文高,包括有滾動條時的未見區域

alert(document.body.scrollTop);           //網頁被捲去的Top(滾動條)

alert(document.body.scrollLeft);           //網頁被捲去的Left(滾動條)

alert(window.screenTop);                     //瀏覽器距離Top

alert(window.screenLeft);                     //瀏覽器距離Left

alert(window.screen.height);                //屏幕分辨率的高

alert(window.screen.width);                 //屏幕分辨率的寬

alert(window.screen.availHeight);          //屏幕可用工作區的高

alert(window.screen.availWidth);           //屏幕可用工作區的寬

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

發佈了38 篇原創文章 · 獲贊 139 · 訪問量 33萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章