该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
图片切换#map{
position:relative;
width: 600px;
height: 600px;
border: 1px solid black;
left:200px;
}
var map=document.getElementById("map");
//创建蛇
function Snake(){
this.body=[
{x:2,y:0},//头
{x:1,y:0},//身
{x:0,y:0}//尾]
]
//显示
this.display=function(){
for(i=0;i
var s=document.createElement("div");
this.body[i].flag=s;
s.style.width=10+"px";
s.style.height=10+"px";
s.style.background="red";
s.style.borderRadius="50%";
s.style.position="absolute";
s.style.left=this.body[i].x * 10+'px';
s.style.top=this.body[i].y * 10+'px';
map.appendChild(s);
}
};
//蛇的持续运动
this.running=function(){
for (var i=this.body.length-1; i>0; i--) {
this.body[i].x = this.body[i-1].x;
this.body[i].y = this.body[i-1].y;
}
//蛇的方向
this.direction="buttom";
//控制蛇头的方向
switch(this.direction){
case "left":
this.body[0].x -= 1;
break;
case "right":
this.body[0].x += 1;
break;
case "top":
this.body[0].y -= 1;
break;
case "buttom":
this.body[0].y += 1;
break;
}
};
};
//键盘控制蛇运动
document.οnkeydοwn=function(e){
e=event||window.event;
switch(e.keyCode){
case 37:
if(snake.direction!="right"){
snake.direction="left";}
break;
case 38:
if(snake.direction!="top"){
snake.direction="buttom";}
break;
case 39:
if(snake.direction!="left"){
snake.direction="right";}
break;
case 40:
if(snake.direction!="buttom"){
snake.direction="top";}
break;
}
};
function Food(){
var f=document.createElement("div");
f.style.width="10px";
f.style.height="10px";
f.style.left=Math.floor(Math.random()*590)+"px";
f.style.top=Math.floor(Math.random()*590)+"px";
f.style.background="black";
f.style.position="absolute";
map.appendChild(f);
}
Food();
var snake=new Snake();
snake.running();
snake.display();
问题:
按上下左右的键盘,蛇头不运动。
求求大佬解决一下!!