js动画原理
1.获得盒子当前位置
2.让盒子在当前位置加1个移动距离
3.利用定时器不断重复这个动作
4.加一个结束定时器的条件
5.注意次元素需要添加定位,才能使用element.style.left
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title>
</head>
<style>
div {
position: absolute;
width: 100px;
height: 100px;
background-color: pink;
}
</style>
<body>
<div></div>
<script>
// 动画原理
// 1.获得盒子当前位置
// 2.让盒子在当前位置加1个移动距离
// 3.利用定时器不断重复这个动作
// 4.加一个结束定时器的条件
// 5.注意次元素需要添加定位,才能使用element.style.left
var div = document.querySelector('div');
var timer = setInterval(function() {
if (div.offsetLeft >= 800) {
clearInterval(timer); //清除定时器
}
div.style.left = div.offsetLeft + 3 + 'px';
//一定要加上px
}, 50);
</script>
</body>
</html>