如何用JavaScript编写一个实现蓝色方块垂直上下移动的简单动画效果的代码?
时间: 2024-11-15 22:26:56 浏览: 12
当然可以。在JavaScript中,我们可以使用HTML、CSS和基本的JavaScript来创建简单的动画效果。这里是一个简单的例子,它会创建一个蓝色的div方块,通过设置其top位置并定时改变,实现垂直方向的移动:
```html
<!DOCTYPE html>
<html lang="en">
<head>
<style>
#mySquare {
width: 50px;
height: 50px;
background-color: blue;
position: absolute;
top: 0;
left: 0;
}
</style>
</head>
<body>
<div id="mySquare"></div>
<script>
// 获取元素
const square = document.getElementById('mySquare');
// 设置初始位置
let topPos = 0;
// 动画函数
function moveSquare() {
if (topPos <= window.innerHeight) { // 如果方块未到达底部
topPos += 5; // 每次增加5像素
square.style.top = topPos + 'px'; // 更新方块位置
} else {
clearInterval(intervalId); // 方块到达底部后停止动画
}
}
// 开始动画
const intervalId = setInterval(moveSquare, 10); // 每10毫秒执行一次
// 添加结束动画清理机制
window.addEventListener('resize', () => {
clearInterval(intervalId);
topPos = 0;
moveSquare(); // 重新开始动画
});
</script>
</body>
</html>
```
在这个示例中,我们首先设置了方块的位置,然后每10毫秒通过`setInterval`更新它的位置。当方块到达窗口底部时,我们清除计时器,当浏览器窗口大小发生改变时,我们会重新开始动画。
阅读全文