Maison interface Web js tutoriel js/jquery获取浏览器窗口可视区域高度和宽度以及滚动条高度实现代码_jquery

js/jquery获取浏览器窗口可视区域高度和宽度以及滚动条高度实现代码_jquery

May 16, 2016 pm 05:46 PM
滚动条

获取浏览器窗口的可视区域高度和宽度,滚动条高度有需要的朋友可参考一下。
IE中,浏览器显示窗口大小只能以下获取: 代码如下复制代码

复制代码 代码如下:

document.body.offsetWidth
document.body.offsetHeight

在声明了DOCTYPE的浏览器中,可以用以下来获取浏览器显示窗口大小: 代码如下复制代码
复制代码 代码如下:

document.documentElement.clientWidth
document.documentElement.clientHeight

IE,FF,Safari皆支持该方法,opera虽支持该属性,但是返回的是页面尺寸;
同时,除了IE以外的所有浏览器都将此信息保存在window对象中,可以用以下获取: 代码如下复制代码
复制代码 代码如下:

window.innerWidth
window.innerHeight

整个网页尺寸一般获得方法 代码如下复制代码
复制代码 代码如下:

document.body.scrollWidth
document.body.scrollHeight

屏幕分辨率高度一般获得方法 代码如下复制代码
复制代码 代码如下:

window.screen.height
window.screen.width

总结一下实例
复制代码 代码如下:

function getViewSizeWithoutScrollbar(){//不包含滚动条
return {
width : document.documentElement.clientWidth,
height: document.documentElement.clientHeight
}
}
function getViewSizeWithScrollbar(){//包含滚动条
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,FireFox 差异如下:
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

另附个人最常用的获取整页宽高的方法(需要jquery框架) 代码如下复制代码
复制代码 代码如下:

$(document).width() $(document).height()

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

alert($(document).scrollTop()); //获取滚动条到顶部的垂直高度
alert($(document).scrollLeft()); //获取滚动条到左边的垂直宽度
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

Musée de deux points: Guide de localisation de Bungle Wasteland
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Musée de deux points: Guide de localisation de Bungle Wasteland
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Microsoft apporte les barres de défilement Fluent de Windows 11 à Google Chrome Microsoft apporte les barres de défilement Fluent de Windows 11 à Google Chrome Apr 14, 2023 am 10:52 AM

Microsoft apporte les barres de défilement Fluent de Windows 11 à Google Chrome

Comment masquer le défilement de la barre de défilement en réaction Comment masquer le défilement de la barre de défilement en réaction Dec 21, 2022 pm 03:38 PM

Comment masquer le défilement de la barre de défilement en réaction

Comment définir la barre de défilement pour qu'elle s'affiche toujours sur le système Mac - Comment définir la barre de défilement pour qu'elle s'affiche toujours Comment définir la barre de défilement pour qu'elle s'affiche toujours sur le système Mac - Comment définir la barre de défilement pour qu'elle s'affiche toujours Mar 18, 2024 pm 06:22 PM

Comment définir la barre de défilement pour qu'elle s'affiche toujours sur le système Mac - Comment définir la barre de défilement pour qu'elle s'affiche toujours

Comment coder une zone de texte avec barre de défilement HTML Comment coder une zone de texte avec barre de défilement HTML Feb 19, 2024 pm 07:38 PM

Comment coder une zone de texte avec barre de défilement HTML

Comment créer une barre de défilement HTML Comment créer une barre de défilement HTML Feb 22, 2024 pm 03:24 PM

Comment créer une barre de défilement HTML

Chrome arrive sur les barres de défilement superposées de style Windows 11 Chrome arrive sur les barres de défilement superposées de style Windows 11 Apr 23, 2023 pm 06:40 PM

Chrome arrive sur les barres de défilement superposées de style Windows 11

Comment définir le style de la barre de défilement HTML Comment définir le style de la barre de défilement HTML Oct 11, 2023 am 10:08 AM

Comment définir le style de la barre de défilement HTML

Comment activer ou désactiver les barres de défilement toujours affichées dans Windows 11 ? Comment activer ou désactiver les barres de défilement toujours affichées dans Windows 11 ? Apr 24, 2023 pm 05:58 PM

Comment activer ou désactiver les barres de défilement toujours affichées dans Windows 11 ?

See all articles