<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>按键球</title>
<style>
*{
margin:0;
padding: 0;
}
#ball{
width: 100px;
height: 100px;
background-color: red;
border-radius: 50%;
position: absolute;
left:100px;
top:100px;
}
</style>
</head>
<body>
<div id="ball"></div>
<script>
var ball = document.getElementById('ball');
// 定义abcd四个方向
var a = false;//左
var b = false;//上
var c = false;//右
var d = false;//下
// 定义水平方向和垂直方向上的坐标
var x = 100;
var y = 100;
// 运动速度
var speed = 5;
var time = null;
time = setInterval(function(){
if(a){
x -= speed;
}
if(b){
y -= speed;
}
if(c){
x += speed;
}
if(d){
y += speed;
}
// 设置x和y的临界值
var maxX = document.documentElement.clientWidth - ball.offsetWidth;
var maxY = document.documentElement.clientHeight - ball.offsetHeight;
if(x >= maxX){
x = maxX;
}
if(x <= 0){
x = 0;
}
if(y >= maxY){
y =maxY;
}
if(y <= 0){
y =0;
}
ball.style.left = x + 'px';
ball.style.top = y + 'px';
},10);
document.onkeydown = function(e){
var e = e || window.event;
if(e.keyCode == 37){
a = true;
}
if(e.keyCode == 38){
b = true;
}
if(e.keyCode == 39){
c = true;
}
if(e.keyCode == 40){
d = true;
}
}
document.onkeyup = function(e){
var e = e || window.event;
if(e.keyCode == 37){
a = false;
}
if(e.keyCode == 38){
b = false;
}
if(e.keyCode == 39){
c = false;
}
if(e.keyCode == 40){
d = false;
}
}
</script>
</body>
</html>
js实现按键球,小球随键盘上下左右控制移动
最新推荐文章于 2022-08-11 21:35:09 发布