You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

myMove()方法功能是什么?前端DOM位移动画实现代码解析

myMove() 方法作用与实现逻辑说明

功能作用

该方法用于实现指定DOM元素的平移动画效果:调用后,页面中id为myAnimation的红色小方块,会从黄色父容器myContainer的左上角位置,沿右下方向匀速滑动,直到触达父容器右下角后自动停止。

逐行实现逻辑

  • 元素获取
    首先通过document.getElementById("myAnimation")获取要执行动画的红色方块元素,存储到变量elem中。
  • 状态初始化
    声明初始偏移量变量pos赋值为0,用来记录方块相对于父容器左上角的位移数值。
  • 定时器启动
    调用setInterval(frame, 10)创建定时任务,设置每10毫秒执行一次frame函数,同时将定时器的唯一标识存入变量id,用于后续停止定时任务。
  • 帧动画执行逻辑
    嵌套的frame函数是动画的核心执行单元,每次触发的逻辑如下:
    1. 终止判断:当pos等于350时调用clearInterval(id)销毁定时器,动画终止。这里350的取值是父容器宽高(400px)减去方块自身宽高(50px)得到的最大可偏移值,此时方块刚好处于父容器右下角,不会超出容器范围。
    2. 位移更新:未达到终止条件时,pos自增1,同时将方块的top和left样式属性设置为pos + 'px',实现方块每次同时向下、向右移动1px的视觉效果。

注意事项

你提供的HTML触发代码<p>点击我</p>没有绑定事件,实际运行时需要修改为<p onclick="myMove()">点击我</p>,点击后才能触发动画效果。

内容的提问来源于stack exchange,提问作者Haise Sakaki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 12:15:04