- offsetLeft : 用于获取元素到最近的定位父盒子的左侧距离
-
计算方式: 当前元素的左边框的左侧到定位父盒子的左边框右侧
-
如果父级盒子没有定位, 那么会接着往上找有定位的盒子
-
如果上级元素都没有定位,那么最后距离是与body的left值
- offsetTop : 用于获取元素到最近定位父盒子的顶部距离
-
计算方式:当前元素的上边框的上侧到定位父盒子的上边框下侧
-
如果父级盒子没有定位,那么会接着往上找有定位的盒子
-
如果上级元素都没有定位,那么最后距离是与body的top值
-
offsetWidth :用于获取元素的真实宽度(除了margin以外的宽度)
-
offsetHeight : 用于获取元素的真实高度(除了margin以外的高度)
-
offsetParent :用于获取该元素中有定位的最近父级元素
- 如果当前元素的父级元素都没有进行定位,那么offsetParent为body
2. 与style.(left/top/width/height)的区别:
-
offset系列的是只读属性,而通过style的方式可以读写
-
offset系列返回的数值类型(结果四舍五入),style返回的是字符串
-
offsetLeft 和 offsetTop 可以返回没有定位的元素的left值和top值,而style不可以
二. scroll系列
1.scroll系列的4个属性
- scrollHeight :元素中内容的实际高度(没有边框)
- 如果内容不足,就是元素的高度
- scrollWidth: 元素中内容的实际宽度(没有边框)
- 如果内容不足,就是元素的宽度
-
scrollTop: onscroll事件发生时,元素向上卷曲出去的距离
-
scrollLeft : onscroll事件发生时,元素向左卷曲出去的距离
2. 兼容问题
(1) 兼容问题
- 未声明 DTD: 谷歌,火狐,IE9+支持
document.body.scrollTop/scrollLeft
- 已经声明DTD:IE8以下支持
document.documentElement.scrollTop/scrollLeft
- 火狐/谷歌/ie9+以上支持的
window.pageYOffest/pageXOffest
(2) 兼容代码
function getScroll() {
return {
left: window.pageXOffset || document.body.scrollLeft || document.documentElement.scrollLeft || 0,
top: window.pageYOffset || document.body.scrollTop || document.documentElement.scrollTop || 0
};
}
使用方法:
-
取得scrollLeft值: getScroll().left
-
取得scrollTop值: getScroll().top
三. client系列
1.client系列的4个常用属性(clientTop和clientLeft这里不予介绍)
-
clientWidth : 获取网页可视区域的宽度
-
clientHeight: 获取网页可视区域的高度
-
clientX :获取鼠标事件发生时的应用客户端区域的水平坐标
-
clientY :获取鼠标事件发生时的应用客户端区域的垂直坐标
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!**
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!