$(document).ready(function(){
  $("#promptButton").click(function(){
    $("#openPrompt").hide();
    startGame();
  });
});

function startGame(){
  $(document).ready(function(){
$("#gameboard").append("<div class='snakeHead' id='head'> hi </div>");
  var direction;
  moveTimer = setInterval(function() {snakeMove()},1000);
  function snakeMove(){
    function snakeDirection(){
      $(".snakeHead").keydown(function(key){
        if (key.which === 38){
            direction = "up";
            return {"margin-top": "-=20px"}
        } else if(key.which === 40){
            direction = "down"
            return {"margin-top": "+=20px"}
        } else if(key.which === 37){
            direction = "left"
            return {"margin-left": "-=20px"}
        } else if(key.which === 39){
            direction = "right"
            return {"margin-left": "+=20px"}
        } else {
            direction = "right"
            return {"margin-left": "+=20px}"
        };
      });
    };
    $('.snakeHead').animate({'margin-left':'+=20px'}, 'slow');
  }
  });
};


我不断


  SyntaxError:期望的表达式,在第32行第11行上显示')'。


我的印象是keydown()仅需要使用事件触发时要调用的函数来调用。我需要另一个表达式来调用吗?

感谢您的帮助,这是我正在尝试的第一个实际项目,并且我是自学成才的,因此请尝试对我来说尽可能清晰。谢谢!

最佳答案

您有语法错误:

function startGame(){
  $(document).ready(function(){
$("#gameboard").append("<div class='snakeHead' id='head'> hi </div>");
  var direction;
  moveTimer = setInterval(function() {snakeMove()},1000);
  function snakeMove(){
    function snakeDirection(){
      $(".snakeHead").keydown(function(key){
        if (key.which === 38){
            direction = "up";
            return {"margin-top": "-=20px"}
        } else if(key.which === 40){
            direction = "down"
            return {"margin-top": "+=20px"}
        } else if(key.which === 37){
            direction = "left"
            return {"margin-left": "-=20px"}
        } else if(key.which === 39){
            direction = "right"
            return {"margin-left": "+=20px"}
        } else {
            direction = "right"
            return {"margin-left": "+=20px}" <--- Here --->
        };
      });
    };
    $('.snakeHead').animate({'margin-left':'+=20px'}, 'slow');
  }
  });
};

10-08 09:07
查看更多