详解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的html(data)方法与<script>脚本块的解决方法
Mar 09 Javascript
基于jQuery的简单的列表导航菜单
Mar 02 Javascript
利用JS自动打开页面上链接的实现代码
Sep 25 Javascript
自己写的兼容ie和ff的在线文本编辑器类似ewebeditor
Dec 12 Javascript
JQuery入门——移除绑定事件unbind方法概述及应用
Feb 05 Javascript
JS选取DOM元素的简单方法
Jul 08 Javascript
JS封装通过className获取元素的函数示例
Dec 20 Javascript
javascript常用的设计模式
Feb 09 Javascript
Angular.JS中select下拉框设置value的方法
Jun 20 Javascript
微信小程序bindinput与bindsubmit的区别实例分析
Apr 17 Javascript
Vue监听滚动实现锚点定位(双向)示例
Nov 13 Javascript
vue中父子组件传值,解决钩子函数mounted只运行一次的操作
Jul 27 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教程之魔术方法的使用示例(php魔术函数)
2014/02/12 PHP
PHP利用APC模块实现文件上传进度条的方法
2015/01/26 PHP
php + nginx项目中的权限详解
2017/05/23 PHP
PC端微信扫码支付成功之后自动跳转php版代码
2017/07/07 PHP
Laravel框架路由和控制器的绑定操作方法
2018/06/12 PHP
一次因composer错误使用引发的问题与解决
2019/03/06 PHP
php面向对象基础详解【星际争霸游戏案例】
2020/01/23 PHP
JavaScript和JQuery实用代码片段(一)
2010/04/07 Javascript
javascript检测浏览器flash版本的实现代码
2011/12/06 Javascript
javascript实现根据身份证号读取相关信息
2014/12/17 Javascript
javaScript中Math()函数注意事项
2015/06/18 Javascript
jQuery+json实现动态创建复杂表格table的方法
2016/10/25 Javascript
boostrapTable的refresh和refreshOptions区别浅析
2017/01/22 Javascript
JS实现选项卡效果的代码实例
2019/05/20 Javascript
微信小程序把百度地图坐标转换成腾讯地图坐标过程详解
2019/07/10 Javascript
jquery树形插件zTree高级使用详解
2019/08/16 jQuery
原生js实现九宫格拖拽换位
2021/01/26 Javascript
[02:03]《现实生活中的DOTA2》—林书豪&DOTA2职业选手出演短片
2015/08/18 DOTA
[46:55]LGD vs Liquid 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
Python多线程学习资料
2012/12/19 Python
python线程锁(thread)学习示例
2013/12/04 Python
Java及python正则表达式详解
2017/12/27 Python
python3利用tcp实现文件夹远程传输
2018/07/28 Python
对Python捕获控制台输出流的方法详解
2019/01/07 Python
python中必要的名词解释
2019/11/20 Python
使用Python脚本从文件读取数据代码实例
2020/01/19 Python
解决pycharm中opencv-python导入cv2后无法自动补全的问题(不用作任何文件上的修改)
2020/03/05 Python
150行python代码实现贪吃蛇游戏
2020/04/24 Python
在pycharm中关掉ipython console/PyDev操作
2020/06/09 Python
遇到的Mysql的面试题
2014/06/29 面试题
创业培训计划书
2014/05/03 职场文书
创先争优公开承诺书
2014/08/30 职场文书
2014年销售部工作总结
2014/12/01 职场文书
创业计划书之便利店
2019/09/05 职场文书
Python 的演示平台支持 WSGI 接口的应用
2022/04/20 Python
Python Matplotlib绘制动画的代码详解
2022/05/30 Python