详解js动态获取浏览器或页面等容器的宽高


Posted in Javascript onMarch 13, 2019

首先说一下js动态获取浏览器或页面等容器的宽高的方法大体有哪些:

网页可见区域宽: document.body.clientWidth
网页可见区域高: document.body.clientHeight
网页可见区域宽: document.body.offsetWidth (包括边线的宽)
网页可见区域高: document.body.offsetHeight (包括边线的高)
网页正文全文宽: document.body.scrollWidth
网页正文全文高: document.body.scrollHeight
网页被卷去的高: document.body.scrollTop
网页被卷去的左: document.body.scrollLeft
网页正文部分上: window.screenTop
网页正文部分左: window.screenLeft
屏幕分辨率的高: window.screen.height
屏幕分辨率的宽: window.screen.width
屏幕可用工作区高度: window.screen.availHeight
屏幕可用工作区宽度: window.screen.availWidth

 接着我们结合实例来实际说明一下:

有时候我们写了100%高度的时候,然后因为是当前页面的子页面,100%的只是父页面,而子页面有下拉条还有内容的话,一些东西就不能都获取到。

如下图:

(我们设置了这个div id为“bg”的高度为100%,但下拉条内容拉下去的时候,还是会发现这个背景高度只是父页面的100%,里面子容器的内容都没有被这个黑色背景覆盖到。)

详解js动态获取浏览器或页面等容器的宽高

详解js动态获取浏览器或页面等容器的宽高

所以在这种时候我们就要开始考虑给这个“bg”设置对应的动态高度。

在js中的初始化方法里写如下代码:

//定义id为bg的高度随内容而变化
  var winHeight=0;
  winHeight=document.body.scrollHeight;
  document.getElementById("bg").style.height=winHeight+"px";
  
}

然后我们再来看效果:

详解js动态获取浏览器或页面等容器的宽高

 好了,这样整个页面都可以被渲染到了。

以上所述是小编给大家介绍的js动态获取浏览器或页面等容器的宽高详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jQuery 学习第五课 Ajax 使用说明
May 17 Javascript
从数组中随机取x条不重复数据的JS代码
Dec 24 Javascript
Jquery中国地图热点效果-鼠标经过弹出提示层信息的简单实例
Feb 12 Javascript
兼容主流浏览器的jQuery+CSS 实现遮罩层的简单代码
Oct 14 Javascript
初识Node.js
Mar 20 Javascript
JavaScript图片轮播代码分享
Jul 31 Javascript
简单实现Vue的observer和watcher
Dec 21 Javascript
js前端日历控件(悬浮、拖拽、自由变形)
Mar 02 Javascript
为你的微信小程序体积瘦身详解
May 20 Javascript
前端主流框架vue学习笔记第二篇
Jul 26 Javascript
前端把html表格生成为excel表格的实例
Sep 19 Javascript
Element Card 卡片的具体使用
Jul 26 Javascript
详解jQuery-each()方法
Mar 13 #jQuery
详解使用Nuxt.js快速搭建服务端渲染(SSR)应用
Mar 13 #Javascript
react同构实践之实现自己的同构模板
Mar 13 #Javascript
使用Node.js实现一个多人游戏服务器引擎
Mar 13 #Javascript
你可能不知道的CORS跨域资源共享
Mar 13 #Javascript
react项目如何使用iconfont的方法步骤
Mar 13 #Javascript
使用jquery的cookie实现登录页记住用户名和密码的方法
Mar 13 #jQuery
You might like
PHP的mysqli_query参数MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的区别
2014/09/29 PHP
Zend Framework教程之Zend_Controller_Plugin插件用法详解
2016/03/07 PHP
PHP判断是否是微信打开还是浏览器打开的方法
2019/02/27 PHP
JavaScript中出现乱码的处理心得
2009/12/24 Javascript
javascript判断用户浏览器插件安装情况的代码
2011/01/01 Javascript
ComboBox 和 DateField 在IE下消失的解决方法
2013/08/30 Javascript
jquery复选框全选/取消示例
2013/12/30 Javascript
js仿百度贴吧验证码特效实例代码
2014/01/16 Javascript
js控制容器隐藏出现防止样式变化的两种方法
2014/04/25 Javascript
Json实现异步请求提交评论无需跳转其他页面
2014/10/11 Javascript
jQuery javascript获得网页的高度与宽度的实现代码
2016/04/26 Javascript
第一篇初识bootstrap
2016/06/21 Javascript
聊一聊Vue.js过渡效果
2016/09/07 Javascript
jQuery中的一些小技巧
2017/01/18 Javascript
es6学习笔记之Async函数的使用示例
2017/05/11 Javascript
nodejs密码加密中生成随机数的实例代码
2017/07/17 NodeJs
vue中实现回车键登录功能
2020/02/19 Javascript
vue实现在进行增删改操作后刷新页面
2020/08/05 Javascript
学习python类方法与对象方法
2016/03/15 Python
基于python时间处理方法(详解)
2017/08/14 Python
python虚拟环境virtualenv的安装与使用
2017/09/21 Python
Python探索之SocketServer详解
2017/10/28 Python
python中列表和元组的区别
2017/12/18 Python
python日期时间转为字符串或者格式化输出的实例
2018/05/29 Python
解决django model修改添加字段报错的问题
2019/11/18 Python
Pytorch中的VGG实现修改最后一层FC
2020/01/15 Python
python 函数中的参数类型
2020/02/11 Python
Django中从mysql数据库中获取数据传到echarts方式
2020/04/07 Python
Python3安装模块报错Microsoft Visual C++ 14.0 is required的解决方法
2020/07/28 Python
Python Map 函数的使用
2020/08/28 Python
美国健康和保健平台:healtop
2020/07/02 全球购物
JDBC操作数据库的基本流程是什么
2014/10/28 面试题
银行职业规划书范文
2013/12/28 职场文书
趣味比赛活动方案
2014/02/15 职场文书
【海涛教你打DOTA】死灵飞龙第一视角解说
2022/04/01 DOTA
处理canvas绘制图片模糊问题
2022/05/11 Javascript