ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

探究-加了动画移动 offsetTop却没有变化

2022-07-10 20:37:40  阅读:211  来源: 互联网

标签:box 动画 move 100px transform 探究 offsetTop var


给div盒子加了translateY,但是在移动的过程中offsetTop的数值却没有变化,跟我预想的很不一致
于是去查了MDN,https://developer.mozilla.org/zh-CN/docs/Web/API/HTMLElement/offsetTop

这一页没说明白,又点进规范看了看,
https://drafts.csswg.org/cssom-view/#dom-htmlelement-offsettop

规范里特地提到了ignoring any transforms,忽略所有transform,撞枪口上了...
而且是忽略元素本身及其祖先的transform

//css部分
<style>
  * {
      margin: 0;
      padding: 0;
  }

  .box {
      width: 100px;
      height: 100px;
      background-color: pink;
      margin: 100px 300px;
      padding: 10px;
      border: 10px solid blue;
  }

  @keyframes move {
      0%{

      }
      100%{
          transform: translateY(100px);
      }
  }
</style>

<div class="box"></div>

//js部分
<script>
    var box = document.querySelector('.box');
    var boxX = box.offsetLeft;
    var boxY = box.offsetTop;

    box.addEventListener('mousemove', function (e) {           
        console.log('盒子偏移量:(' + boxX + ',' + boxY + ')');       
    });
    box.addEventListener("mouseover",function(){
        box.style="animation: move 5s ;"
    })
</script>

标签:box,动画,move,100px,transform,探究,offsetTop,var
来源: https://www.cnblogs.com/qiaorr101/p/16463945.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有