美文网首页
js 求定位元素距离页面的偏移量

js 求定位元素距离页面的偏移量

作者: Peter_2B | 来源:发表于2022-03-14 12:57 被阅读0次
定位元素黄色box在绿色box和灰色box中,距离页面body偏移量
    <style type="text/css">
        *{
            margin: 0;
            padding: 0;
        }
        .grandfather{
            width: 300px;
            height: 300px;
            border: 10px solid #ccc;
            left: 50px;
            position: absolute;
        }
        .father{
            width: 200px;
            height: 200px;
            border: 10px solid green;
            margin-left: 50px;
            position: relative;
        }
        .son{
            width: 100px;
            height: 100px;
            border: 10px solid orange;
            margin-left: 50px;
        }
    </style>
<script type="text/javascript">

var son = document.querySelector('.son');
console.log(son.offsetLeft);
console.log( getElementLeft(son) );

function getElementLeft(eleObj){
    // 当前元素距有定位的父元素的左偏移量
    var currentLeft = eleObj.offsetLeft;

    // 找到当前元素有定位的父元素
    var parent = eleObj.offsetParent;

    // 最外层是/没有定位父级就是基于<body/>, body.offsetParent是null.
    while(parent != null){
              // 当前元素做偏移量 + 父元素的左边border宽度 + 父元素的左偏移量
        currentLeft = currentLeft + parent.clientLeft + parent.offsetLeft;
        console.log(parent);
        parent = parent.offsetParent;
    }
    return currentLeft;
}
</script>

相关文章

  • js 求定位元素距离页面的偏移量

  • js中的高度

    offsetHeight:元素本身的高度,包括边框 offsetTop:基于定位父类元素的偏移量(距离) scro...

  • 网页特效

    元素偏移量offset系列 动态获取元素的偏移 获取元素距离带有定位父元素的位置 获取元素的自身大小 返回的数值都...

  • 30、CSS定位position之absolute

    绝对定位 :absolute 绝对定位的特点: 开启绝对定位后,不设置偏移量的话元素的位置就不会改变 开启后,元素...

  • CSS 样式介绍(四)

    定位属性 元素的定位属性主要包括定位模式和边偏移两个部分的组合。 边偏移定位:top 顶部偏移量,定义元素相对于其...

  • jsvascript学习(九)- offwet家族和常用事件属性

    OFFSET offset这个属性,英文翻译过来就是偏移量,也即是元素相当于父元素的偏移量,常用于定位以及缓动动画...

  • css定位(1)

    元素的定位属性 元素的定位属性主要包括定位模式和边偏移两部分。 1、边偏移 边偏移属性描述top顶端偏移量,定义元...

  • js实现放大镜

    效果图 实现原理 借助宽高等比例放大的两张图片,结合js中鼠标偏移量、元素偏移量、元素自身宽高等属性完成;左侧遮罩...

  • CSS:position——绝对、相对、固定、粘性定位的简单记录

    一、相对定位——relative 有偏移量(left、right、top、bottom)时,元素相对于自身进行偏移...

  • offsetLeft、offsetWidth 的区别

    offsetLeft 返回该对象元素边界的左上角顶点相对于最近定位的父级元素左上角顶点的水平偏移量,如果没有定位的...

网友评论

      本文标题:js 求定位元素距离页面的偏移量

      本文链接:https://www.haomeiwen.com/subject/jpwjdrtx.html