js/jquery獲取瀏覽器窗口可視區(qū)域高度和寬度以及滾動(dòng)條高度實(shí)現(xiàn)代碼
更新時(shí)間:2012年12月17日 17:09:59 作者:
在js使用過(guò)程中可能會(huì)根據(jù)要求獲取瀏覽器窗口的可視區(qū)域高度和寬度,滾動(dòng)條高度,于是本人搜集整理下,拿出來(lái)和大家分享,希望可以幫助你們
獲取瀏覽器窗口的可視區(qū)域高度和寬度,滾動(dòng)條高度有需要的朋友可參考一下。
IE中,瀏覽器顯示窗口大小只能以下獲?。?nbsp;代碼如下復(fù)制代碼
document.body.offsetWidth
document.body.offsetHeight
在聲明了DOCTYPE的瀏覽器中,可以用以下來(lái)獲取瀏覽器顯示窗口大小: 代碼如下復(fù)制代碼
document.documentElement.clientWidth
document.documentElement.clientHeight
IE,F(xiàn)F,Safari皆支持該方法,opera雖支持該屬性,但是返回的是頁(yè)面尺寸;
同時(shí),除了IE以外的所有瀏覽器都將此信息保存在window對(duì)象中,可以用以下獲?。?nbsp;代碼如下復(fù)制代碼
window.innerWidth
window.innerHeight
整個(gè)網(wǎng)頁(yè)尺寸一般獲得方法 代碼如下復(fù)制代碼
document.body.scrollWidth
document.body.scrollHeight
屏幕分辨率高度一般獲得方法 代碼如下復(fù)制代碼
window.screen.height
window.screen.width
總結(jié)一下實(shí)例
function getViewSizeWithoutScrollbar(){//不包含滾動(dòng)條
return {
width : document.documentElement.clientWidth,
height: document.documentElement.clientHeight
}
}
function getViewSizeWithScrollbar(){//包含滾動(dòng)條
if(window.innerWidth){
return {
width : window.innerWidth,
height: window.innerHeight
}
}else if(document.documentElement.offsetWidth == document.documentElement.clientWidth){
return {
width : document.documentElement.offsetWidth,
height: document.documentElement.offsetHeight
}
}else{
return {
width : document.documentElement.clientWidth + getScrollWith(),
height: document.documentElement.clientHeight + getScrollWith()
}
}
}
IE,F(xiàn)ireFox 差異如下:
IE6.0、FF1.06+:
clientWidth = width + padding
clientHeight = height + padding
offsetWidth = width + padding + border
offsetHeight = height + padding + border
IE5.0/5.5:
clientWidth = width - border
clientHeight = height - border
offsetWidth = width
offsetHeight = height
另附個(gè)人最常用的獲取整頁(yè)寬高的方法(需要jquery框架) 代碼如下復(fù)制代碼
$(document).width() < $('body').width() ? $(document).width() : $('body').width();
$(document).height() < $('body').height() ? $(document).height() : $('body').height();
alert($(window).height()); //瀏覽器時(shí)下窗口可視區(qū)域高度
alert($(document).height()); //瀏覽器時(shí)下窗口文檔的高度
alert($(document.body).height());//瀏覽器時(shí)下窗口文檔body的高度
alert($(document.body).outerHeight(true));//瀏覽器時(shí)下窗口文檔body的總高度 包括border padding margin
alert($(window).width()); //瀏覽器時(shí)下窗口可視區(qū)域?qū)挾?BR>alert($(document).width());//瀏覽器時(shí)下窗口文檔對(duì)于象寬度
alert($(document.body).width());//瀏覽器時(shí)下窗口文檔body的高度
alert($(document.body).outerWidth(true));//瀏覽器時(shí)下窗口文檔body的總寬度 包括border padding margin
alert($(document).scrollTop()); //獲取滾動(dòng)條到頂部的垂直高度
alert($(document).scrollLeft()); //獲取滾動(dòng)條到左邊的垂直寬度
IE中,瀏覽器顯示窗口大小只能以下獲?。?nbsp;代碼如下復(fù)制代碼
復(fù)制代碼 代碼如下:
document.body.offsetWidth
document.body.offsetHeight
在聲明了DOCTYPE的瀏覽器中,可以用以下來(lái)獲取瀏覽器顯示窗口大小: 代碼如下復(fù)制代碼
復(fù)制代碼 代碼如下:
document.documentElement.clientWidth
document.documentElement.clientHeight
IE,F(xiàn)F,Safari皆支持該方法,opera雖支持該屬性,但是返回的是頁(yè)面尺寸;
同時(shí),除了IE以外的所有瀏覽器都將此信息保存在window對(duì)象中,可以用以下獲?。?nbsp;代碼如下復(fù)制代碼
復(fù)制代碼 代碼如下:
window.innerWidth
window.innerHeight
整個(gè)網(wǎng)頁(yè)尺寸一般獲得方法 代碼如下復(fù)制代碼
復(fù)制代碼 代碼如下:
document.body.scrollWidth
document.body.scrollHeight
屏幕分辨率高度一般獲得方法 代碼如下復(fù)制代碼
復(fù)制代碼 代碼如下:
window.screen.height
window.screen.width
總結(jié)一下實(shí)例
復(fù)制代碼 代碼如下:
function getViewSizeWithoutScrollbar(){//不包含滾動(dòng)條
return {
width : document.documentElement.clientWidth,
height: document.documentElement.clientHeight
}
}
function getViewSizeWithScrollbar(){//包含滾動(dòng)條
if(window.innerWidth){
return {
width : window.innerWidth,
height: window.innerHeight
}
}else if(document.documentElement.offsetWidth == document.documentElement.clientWidth){
return {
width : document.documentElement.offsetWidth,
height: document.documentElement.offsetHeight
}
}else{
return {
width : document.documentElement.clientWidth + getScrollWith(),
height: document.documentElement.clientHeight + getScrollWith()
}
}
}
IE,F(xiàn)ireFox 差異如下:
IE6.0、FF1.06+:
復(fù)制代碼 代碼如下:
clientWidth = width + padding
clientHeight = height + padding
offsetWidth = width + padding + border
offsetHeight = height + padding + border
IE5.0/5.5:
clientWidth = width - border
clientHeight = height - border
offsetWidth = width
offsetHeight = height
另附個(gè)人最常用的獲取整頁(yè)寬高的方法(需要jquery框架) 代碼如下復(fù)制代碼
復(fù)制代碼 代碼如下:
$(document).width() < $('body').width() ? $(document).width() : $('body').width();
$(document).height() < $('body').height() ? $(document).height() : $('body').height();
alert($(window).height()); //瀏覽器時(shí)下窗口可視區(qū)域高度
alert($(document).height()); //瀏覽器時(shí)下窗口文檔的高度
alert($(document.body).height());//瀏覽器時(shí)下窗口文檔body的高度
alert($(document.body).outerHeight(true));//瀏覽器時(shí)下窗口文檔body的總高度 包括border padding margin
alert($(window).width()); //瀏覽器時(shí)下窗口可視區(qū)域?qū)挾?BR>alert($(document).width());//瀏覽器時(shí)下窗口文檔對(duì)于象寬度
alert($(document.body).width());//瀏覽器時(shí)下窗口文檔body的高度
alert($(document.body).outerWidth(true));//瀏覽器時(shí)下窗口文檔body的總寬度 包括border padding margin
alert($(document).scrollTop()); //獲取滾動(dòng)條到頂部的垂直高度
alert($(document).scrollLeft()); //獲取滾動(dòng)條到左邊的垂直寬度
相關(guān)文章
treepanel動(dòng)態(tài)加載數(shù)據(jù)實(shí)現(xiàn)代碼
本文介紹一個(gè)treepanel動(dòng)態(tài)加載數(shù)據(jù)的例子,需要了解的朋友可以參考下2012-12-12
jQuery設(shè)置聚焦并使光標(biāo)位置在文字最后的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇jQuery設(shè)置聚焦并使光標(biāo)位置在文字最后的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08
jQuery實(shí)現(xiàn)列表自動(dòng)滾動(dòng)循環(huán)滾動(dòng)展示新聞
jQuery實(shí)現(xiàn)列表自動(dòng)滾動(dòng)循環(huán)滾動(dòng)展示新聞,鼠標(biāo)懸停時(shí)停止?jié)L動(dòng)并提示,離開(kāi)后,繼續(xù)滾動(dòng),實(shí)現(xiàn)的代碼如下,需要的朋友可以看看2014-08-08
jQuery使用ajax_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要為大家詳細(xì)介紹了jQuery使用ajax的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07
jQuery插件實(shí)現(xiàn)彈性運(yùn)動(dòng)完整示例
這篇文章主要介紹了jQuery插件實(shí)現(xiàn)彈性運(yùn)動(dòng),結(jié)合完整實(shí)例形式分析了jQuery插件擴(kuò)展結(jié)合定時(shí)器實(shí)現(xiàn)頁(yè)面元素抖動(dòng)的相關(guān)操作技巧,需要的朋友可以參考下2018-07-07
jQuery validate 驗(yàn)證radio實(shí)例
這篇文章主要介紹了jQuery validate 驗(yàn)證radio實(shí)例代碼,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-03-03

