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.top(上边框的宽度)
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:内容层顶部到可视区域顶部的距离。
实例:varscrollTop=document.documentElement.scrollTop||window.pageYOffset||document.body.scrollTop;持续获取高度的方式:
window.addEventListener('scroll',()=>{ varscrollTop=document.documentElement.scrollTop||window.pageYOffset||document.body.scrollTop; });
4,scrollLeft
scrollLeft:内容层左端到可视区域左端的距离.
注意:下面元素属性和元素方法都通过elem.属性或elem.方法的方式使用,window属性通过window.属性的方式使用,document属性则通过document调用。
上面属性中,关于window.innerWidth和window.innerHeight,我自己测试的结果值是包含滚动条的,但网上的教程和相关文档都说不包括滚动条,虽然滚动条的宽度不大,对整体影响也不明显,但如果有道友有准确答案的,还请不吝赐教,顺手留个言,谢谢!
到此这篇关于javascript中的offsetWidth、clientWidth、innerWidth及相关属性方法的文章就介绍到这了,更多相关javascriptoffsetWidthclientWidthinnerWidth内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!