84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
刚学JS没多久,大概看了一遍书,想写一个贪吃蛇练练手,写了一个判断,当head.top < 0px 时,显示游戏结束,但是预览的时候.top到了90px就显示游戏结束了。查了代码不知道为什么,请大神解答一下。
GameOver Replay
GameOver
Replay
预览时,通过键盘的W S A D判断head的移动上下左右,我想要的是我按了W后,HEAD向上移动到head.top < 0px时,执行gameOver();可是预览的时候按了W,HEAD移动到.top =90px 的时候,gameOver()就执行了。
人生最曼妙的风景,竟是内心的淡定与从容!
你用的字符串比较:
'90px' > '570px' == true
帮你修改了一下,用 parseInt 把 [dom].style.top 转换成了数字。
只修改了一行(99行):
原来:
if (head.style.top > 570 + "px") {
修改后:
if ( parseInt(head.style.top) > 570 || parseInt(head.style.top) < 0) {
你知道用console.log输出信息,你就应该在gameOver的函数写一个输出信息试试。
你用字符串比较大小明显有问题
你用的字符串比较:
帮你修改了一下,用 parseInt 把 [dom].style.top 转换成了数字。
只修改了一行(99行):
原来:
修改后:
你知道用console.log输出信息,你就应该在gameOver的函数写一个输出信息试试。
你用字符串比较大小明显有问题