获取页面高度和宽度等

本文深入探讨了PC端和移动端的布局视口与视觉视口的区别,详细介绍了如何使用JavaScript获取不同视口的高度和宽度,包括理想视口、页面body、滚动条卷起高度等关键信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先来了解一下布局视口视觉视口
PC端: 布局视口 = 视觉视口
移动端:
(1)布局视口:
在这里插入图片描述
(2) 视觉视口
在这里插入图片描述
然后总结一下各种页面的高度和宽度如下:
测试Chrome版本:71.0.3578.98(正式版本)

  1. 获取页面相关的高度
  • 获取网页布局视口的高(不包括菜单栏,水平滚动条,margin和border,包括padding)
var clientHeight = document.documentElement.clientHeight || document.body.clientHeight;
//jQuery:
var clientHeight = $(window).height();

如下图所示
在这里插入图片描述

  • 获取网页视觉视口的高(不包括菜单栏(顶部和底部),包括水平滚动条/border/margin/padding)
var innerHeight = window.innerHeight
  • 获取整个浏览器窗口的高(包括顶部菜单栏,包括水平滚动条,不包括底部菜单栏)
var outerHeight = window.outerHeight (1080*1920的浏览器的值为1040 = 1080 - 40(底部菜单栏的高度))
  • 获取页面理想视口高度(理想视口=视觉视口*页面缩放比,在页面缩放比是100%时,理想视口 = 视觉视口,对于分辨率为1920乘1080的显示屏来说,不管怎么缩放,理想视口的高度都不变,而视觉视口高度会变化)
var height =window.screen.height(1080)
  • 获取页面body的高(不包括菜单栏,包括垂直滚动条滚动的高度,padding,margin,border,水平滚动条)
var bodyHeight = document.documentElement.offsetHeight ||  document.body.offsetHeight;
//jQuery:
var bodyHeight = $('body').height()
  • 获取滚动条卷起的高度
var screenScrollTop = document.documentElement.scrollTop || document.body.scrollTop;
//jQuery:
var screenScrollTop  = $(window).scrollTop();
  1. 获取页面相关宽度
  • 获取页面布局视口宽度(不包括包括滚动条,滚动条的宽度一般是17px, 也不包括border和margin,包括padding;布局视口的宽度是一个固定值,不会随着页面的缩放而改变)
 var clientWidth = document.documentElement.clientWidth || document.body.clientWidth;
  • 获取网页视觉视口的宽度(包括滚动条/border/margin/padding)
var screenWidth =  window.innerWidth;
  • 获取页面理想视口宽度(理想视口=视觉视口页面缩放比,在页面缩放比是100%时,理想视口 = 视觉视口,对于分辨率为19201080的显示屏来说,不管怎么缩放,理想视口的宽度都不变,视觉视口宽度会变化)
var width = window.screen.width(1920)

参考:
JS 获取屏幕、浏览器、页面的高度宽度

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值