前言:

如果需要动态计算标签的距离时,我们时常会用到这两个属性offsetLeft和offsetTop,我的使用场景是,我有一个背景的div1,另一个div2并不在div1内,但是我需要让div2在div1的又下角,如果我使用margin-left或margin-top,在不同分辨率之间切换时都会有改变,所以这时候就用到啦这两个属性。

正文:

先粘贴两段代码,你们粘到自己编辑器里试试效果,F12看下控制台的区别

情况一:

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><script type="text/javascript" src="js/jquery-3.1.1.min.js"></script><script type="text/javascript">function codd(){var obj1=document.getElementById('cc');console.log(obj1.offsetLeft);console.log(obj1.offsetTop);}</script></head><body><div id="aa" style="width:400px; height:400px; background:#0f0; margin-left:10px;"><div id="bb" style="width:300px; height:300px; background:#00f; margin-left:10px;"><div id="cc" style="width:200px; height:200px; background:#000; margin-left:10px;" onclick="codd()"></div></div></div></body>
</html>

情况二:

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><script type="text/javascript" src="js/jquery-3.1.1.min.js"></script><script type="text/javascript">function codd(){var obj1=document.getElementById('cc');console.log(obj1.offsetLeft);console.log(obj1.offsetTop);}</script></head><body><div id="aa" style="width:400px; height:400px; background:#0f0; margin-left:10px;"><div id="bb" style="width:300px; height:300px; background:#00f; margin-left:10px;  position: absolute;"><div id="cc" style="width:200px; height:200px; background:#000; margin-left:10px;" onclick="codd()"></div></div></div></body>
</html>

情况二比情况一多了一个属性position:absolute,这样控制台打印的就不一样啦,重点来啦,在页面任一元素的offsetLeft或offsetTop总是找到离其最近的已经定位的元素定位,如果没有,就根据根节点body定位,然后获取其left值或top值。

总结:

这次没啥好总结的,我叫浪达,一个想成为架构师(hou) (gong) (wang)的程序员

offsetLeft和offsetTop怎么用相关推荐

  1. 正确使用pageX、pageY、offsetLeft、offsetTop

    获取鼠标位置的时候,遇到一点疑问,然后验证了一下自己的疑惑: pageX.pageY跟clientX和clientY类似,是相对于浏览器文档的坐标: offsetLeft.offsetTop获取的是固 ...

  2. offset家族/`offsetParent`-定位父级/真实宽高:offsetWidth,offsetHeight/offsetLeft和offsetTop

    01-offset家族.真实宽高:offsetWidth,offsetHeight.-真实偏移:margin和定位的偏移组合:offsetLeft和offsetTop <style>.bo ...

  3. HTMLElement.offsetParent(offsetLeft和offsetTop参照offsetParent的内边距边界)

    IE7以上(不是火狐): 父级没有定位: 本身没有定位: ==> offsetParent:body 本身定位为:absolute/relative: ==> offsetParent:b ...

  4. 一篇弄懂 offsetWidth、offsetHeight、offsetleft、offsetTop和offsetParent的区别!(1)

    快速理解offset之间的区别 1.offsetWidth与offsetHeight 2.offsetParent 3.offsetleft.offsetTop 以下代码均在Chrome浏览器中测试 ...

  5. offsetLeft、offsetTop全面解析

    offsetLeft.offsetTop全面解析 一.第一个小例子 <body> <style>body { margin:0; }.box1 { width:300px; h ...

  6. 【JavaScript】全面解析offsetLeft、offsetTop

    前言:偏移量,很多动画效果的实现都是通过去改变偏移量的改变来实现的,但是你真的完全了解offsetLeft,offsetTop吗? 一.第一个小例子 <body> <style> ...

  7. offsetleft和offsettop的使用

    offsetLeft 是一个只读属性,返回当前元素相对于 offsetParent 节点左边界的偏移像素值. offsetLeft和offsetTop理解为当前元素 距离 父元素左上角的偏移值(偏移量 ...

  8. getBoundingClientRect计算页面元素的offsetLeft、offsetTop

    网上很流行的方法,不用框架时: function getOffsetPosition(element){ var posTop = 0, posLeft = 0; do { posTop += ele ...

  9. clienttop,clientleft,scrolltop,scrollleft,offsettop,offsetleft全解析

    一张图 网页可见区域宽: document.body.clientWidth; 网页可见区域高: document.body.clientHeight; 网页可见区域宽: document.body. ...

最新文章

  1. 怎么将算法改成程序_多肉烂根怎么办?将土培改成水培,长势好,叶子变得更水灵...
  2. 建一所希望小学需要600万!
  3. [转]Oracle 表空间与数据文件
  4. ubuntukylin14安装ns-allinone-2.35教程(虚拟机ubuntu同理)
  5. Android 使用dagger2进行依赖注入(基础篇)
  6. pytorch---之随机种子初始化
  7. 【学习OpenCV4】图像像素数据类型的转换与归一
  8. qt 实现、区分鼠标单击,双击事件
  9. java servlet继承_servlet继承什么类
  10. 计算机考试后进先出,事业单位考试计算机基础知识:建立单链表——后进先出表...
  11. Day08 - HTML5 Canvas 实现彩虹画笔绘画板指南
  12. [论文阅读] Beyond part models: Person retrieval with refined part pooling
  13. android 9闪屏,android 9图片制作 显示会出现闪屏怎么处理
  14. 喜迎国庆中秋,双节快乐!
  15. D. Cloud of Hashtags
  16. 什么能吃,什么不能吃
  17. 信息系统项目管理师计算题(进度管理计算)
  18. 全志科技/汇顶科技/兆易创新营收与存储器涨价潮有啥关系?
  19. 提权系列(一)----Windows Service 服务器提权初识与exp提权,mysql提权
  20. 《Web前端开发精品课——HTML5 Canvas开发详解》——第一部分第二章节

热门文章

  1. length命令怎么用Matlab,matlab中length函数用法
  2. 教你自己做Win7安装U盘
  3. java set怎么初始化_用Java初始化HashSet
  4. maven整合SSM搭建项目
  5. 云南金沙江丽江流域现神秘岩画 岩壁印有手印
  6. Jmeter命令行运行实例讲解
  7. 【赵强老师】Redis简介和安装配置
  8. ubuntu 18.04 网络图标不见的解决办法
  9. gam估计模型的链接
  10. 使用Javascript直接将网页进行简繁转换[转]