列举几个常用的属性

client系列

clientWidth - 盒子真实内容的宽度[content+padding左右],不包括边线和滚动条

clientHeight - 盒子真实内容的高度[content+padding上下],不包括边线和滚动条

clientTop - 盒子上边框的宽度[border-top]

clientLeft - 盒子左边框的宽度[border-left]

offset系列:获取整个盒子的宽高

offsetWidth - 整个盒子的宽度[content+padding+border]

offsetHeight - 整个盒子的高度[content+padding+border]

offsetParent - 父级参照物:一个元素的父级参照物,就看它的父级是否有发生定位,如果有,那么它的父级就是当前元素的父级参照物,

如果没有,那么它的父级参照物就是body

offsetTop - 当前元素的外边框距离父级参照物内边距的上偏移量

offsetLeft - 当前元素的外边框距离父级参照物内边距的左偏移量

scroll系列

scrollWidth - 盒子真实内容【包括溢出和未溢出】的宽度,没有溢出的情况下 scrollWidth=clientWidth,有溢出盒子的scrollWidth+溢出宽度

scrollHeight - 盒子真实内容【包括溢出和未溢出】的高度,没有溢出的情况下 scrollHeight=clientHeight,有溢出盒子的scrollHeight+溢出高度

scrollTop - 盒子向上卷出去的距离

scrollLeft - 盒子向右卷出去的距离

封装一个获取当前元素距离body的距离的方法

function offset (ele){
let l = ele.offsetLeft;
let t = ele.offsetTop;
let parent = ele.offsetParent;
while(parent.tagName !== 'BODY'){
l+= parent.clientLeft + parent.offsetLeft;
t+= parent.clientTop + parent.offsetTop;
// 需要不断的跟新父级参照物
parent = parent.offsetParent
}
return {left:l,top:t}
}
												

最新文章

  1. 网上找的Gif图片解析类
  2. salesforce 零基础学习(二十)简单APP制作
  3. (转)Tomcat启动报Error listenerStart错误
  4. 开源免费ERP/CRM/SCM:iDempiere 2.0 安装配置
  5. bundle install rake-10.4.2
  6. xcode 3.x版本中的Executables 到xcode 4.x中怎么找不到了?
  7. webView 加载本地文件 - html/htm pdf docx tx
  8. 通过ReconstructMe实现3D扫描
  9. 原生的AJAX
  10. toString()方法细节
  11. 1.httpClient和ScrollView
  12. python抓取数据构建词云
  13. 百度杯”CTF比赛 2017 二月场 没错!就是文件包含漏洞。
  14. Day041--CSS, 盒模型, 浮动
  15. python迭代-如何使用生成器函数实现可迭代对象
  16. Python文件学习
  17. Strom的集群停止以及启动
  18. django form 的内置字段类型
  19. 学JS的心路历程 -数组常见处理方法
  20. Path Sum II - LeetCode

热门文章

  1. Windows Cluster 在群集管理器下 集群或可用性组 都不显示的问题
  2. JavaScript(四)变量
  3. Docker:pipeline编写基本技巧- jenkins配置通过免交互方式拉取git源码管理仓库的代码
  4. How to Make Fibonacci Confusing
  5. Cordova入门系列(一)创建项目 转发 https://www.cnblogs.com/lishuxue/p/6008678.html
  6. QPushButton class
  7. SequoiaDB 巨杉数据库
  8. 滴滴 CTO 架构师 业务 技术 战役 时间 赛跑 超前 设计
  9. 注意:QQ影音视频压缩时长丢失
  10. 【zabbix教程系列】五、邮件报警设置(脚本方式)