javascript中的offsetWidth、clientWidth、innerWidth及相关
关于js中的offsetWidth、clientWidth、scrollWidth等一系列属性及其方法一直都傻傻分不清,这里就来一下这些方法的用法和含义。
一、clientWidth和clientHeigh 、 clientTop和clientLeft
1,clientWidth的实际宽度
clientWidth = width+左右padding
2,clientHeigh的实际高度
clientHeigh = height + 上下padding
3,clientTop的实际宽度
clientTop = boder.(上边框的宽度)
4,clientLeft的实际宽度
clientLeft = boder.left(左边框的宽度)
二、offsetWidth和offsetHight 、 offsetTop和offsetLeft
1,offsetWidth的实际宽度
offsetWidth = width + 左右padding + 左右boder
2,offsetHeith的实际高度
offsetHeith = height + 上下padding + 上下boder
3,offsetTop实际宽度
offsetTop当前元素 上边框 外边缘 到 最近的已定位父级(offsetParent) 上边框 内边缘的 距离。如果父级都没有定位,则分别是到body 顶部 和左边的距离
4,offsetLeft实际宽度
offsetLeft当前元素 左边框 外边缘 到 最近的已定位父级(offsetParent) 左边框 内边缘的 距离。如果父级都没有定位,则分别是到body 顶部 和左边的距离
三、scrollWidth和scrollHeight 、 scrollTop和scrollLeft
1,scrollWidth实际宽度
scrollWidth获取指定标签内容层的真实宽度(可视区域宽度+被隐藏区域宽度)。
2,scrollHeight的实际高度
scrollHeight获取指定标签内容层的真实高度(可视区域高度+被隐藏区域高度)
3,scrollTop
scrollTop :内容层顶部 到 可视区域顶部的距离。
实例var scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;持续获取高度的方式
window.addEventListener('scroll', ()=>{ var scrollTop = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop; });
4,scrollLeft
scrollLeft:内容层左端 到 可视区域左端的距离.
注意 狼蚁网站SEO优化元素属性和元素方法都通过 elem.属性 或 elem.方法 的方式使用,window属性通过 window.属性 的方式使用,document属性则通过document调用。
<script> / 元素视图属性 offsetWidth 水平方向 width + 左右padding + 左右border-width offsetHeight 垂直方向 height + 上下padding + 上下border-width clientWidth 水平方向 width + 左右padding clientHeight 垂直方向 height + 上下padding offsetTop 获取当前元素到 定位父节点 的方向的距离 offsetLeft 获取当前元素到 定位父节点 的left方向的距离 scrollWidth 元素内容真实的宽度,内容不超出盒子高度时为盒子的clientWidth scrollHeight 元素内容真实的高度,内容不超出盒子高度时为盒子的clientHeight 元素视图属性结束 Window视图属性(低版本IE浏览器[<IE9]不支持) 【自测包含滚动条,但网络教程都说不包含???】 innerWidth 浏览器窗口可视区宽度(不包括浏览器控制台、菜单栏、工具栏) innerHeight 浏览器窗口可视区高度(不包括浏览器控制台、菜单栏、工具栏) Window视图属性结束 Document文档视图 (低版本IE的innerWidth、innerHeight的代替方案) document.documentElement.clientWidth 浏览器窗口可视区宽度(不包括浏览器控制台、菜单栏、工具栏、滚动条) document.documentElement.clientHeight 浏览器窗口可视区高度(不包括浏览器控制台、菜单栏、工具栏、滚动条) document.documentElement.offsetHeight 获取整个文档的高度(包含body的margin) document.body.offsetHeight 获取整个文档的高度(不包含body的margin) document.documentElement.scrollTop 返回文档的滚动方向的距离(当窗口发生滚动时值改变) document.documentElement.scrollLeft 返回文档的滚动left方向的距离(当窗口发生滚动时值改变) Document文档视图结束 元素方法 1. getBoundingClientRect() 获取元素到body bottom: 元素底边(包括border)到可视区最顶部的距离 left: 元素最左边(不包括border)到可视区最左边的距离 right: 元素最右边(包括border)到可视区最左边的距离 : 元素顶边(不包括border)到可视区最顶部的距离 height: 元素的offsetHeight width: 元素的offsetWidth x: 元素左上角的x坐标 y: 元素左上角的y坐标 2. scrollIntoView() 让元素滚动到可视区 元素方法结束 / </script>
上面属性中,关于 window.innerWidth 和 window.innerHeight, 我自己测试的结果值是包含滚动条的,但网上的教程和相关文档都说不包括滚动条,虽然滚动条的宽度不大,对整体影响也不明显,但如果有道友有准确答案的,还请不吝赐教,顺手留个言,谢谢!
到此这篇关于javascript中的offsetWidth、clientWidth、innerWidth及相关属性方法的文章就介绍到这了,更多相关javascript offsetWidth clientWidth innerWidth内容请搜索狼蚁SEO以前的文章或继续浏览狼蚁网站SEO优化的相关文章希望大家以后多多支持狼蚁SEO!
编程语言
- 如何快速学会编程 如何快速学会ug编程
- 免费学编程的app 推荐12个免费学编程的好网站
- 电脑怎么编程:电脑怎么编程网咯游戏菜单图标
- 如何写代码新手教学 如何写代码新手教学手机
- 基础编程入门教程视频 基础编程入门教程视频华
- 编程演示:编程演示浦丰投针过程
- 乐高编程加盟 乐高积木编程加盟
- 跟我学plc编程 plc编程自学入门视频教程
- ug编程成航林总 ug编程实战视频
- 孩子学编程的好处和坏处
- 初学者学编程该从哪里开始 新手学编程从哪里入
- 慢走丝编程 慢走丝编程难学吗
- 国内十强少儿编程机构 中国少儿编程机构十强有
- 成人计算机速成培训班 成人计算机速成培训班办
- 孩子学编程网上课程哪家好 儿童学编程比较好的
- 代码编程教学入门软件 代码编程教程