2017-07-22 32 views
1

我有一个简单的javascript代码,但它不起作用。我的代码是:html body onload不起作用

<html> 
<head> 
    <title>JavaScript</title> 
<script>  
var target; 
var guess_input; 
var guesses = 0; 
var finished = false; 
var colors = ["black","blue","green","purple","red","white","yellow"]; 



     function do(){ 


      var random = Math.random(); 
      var index = Math.floor(random * 7); 
      target = colors[index]; 
      while(!finished){ 
       guess_input = prompt("I am thinking of a color : black, blue, green, purple, red, white \n\n" + "What color am i thinking of?"); 
       guesses++; 
       finished = check();    
      } 
      var myBody = document.getElementsByTagName("body")[0]; 
      myBody.style.background = target; 
     } 

     function check(){ 
      if (guess_input > target){ 
       alert("your color is alphabetically higher than mine"); 
       return false; 
      } 

      if (guess_input < target){ 
       alert("your color is alphabetically lower than mine"); 
       return false; 
      } 

      if (guess_input == target){ 
       alert("your color is correct! it tooks you" + guesses "guesses to finish the game!"); 
       return true; 
      } 
      else { 
       alert("Sorry, I do not recoginize your color"); 
       return false; 
      } 
</script> 
</head> 
    <body onload = "do()"> 

    </body> 

</html> 

的错误信息是:未捕获的SyntaxError:意外的标记做 part2.html:53未捕获的SyntaxError:意外的标记),这是“功能做的()”,所以有什么问题?谢谢!

+0

重命名功能不再次尝试做函数名等。这可能是一个关键字问题。 –

+3

这确实是一个关键字问题。在javascript中有一些名为'do {} while()'的函数,并且使用'do'作为函数名称与之冲突,而'do'就是这样一个**保留关键字**,它不能用作函数的名称,变量等 – adeneo

回答

0

你失踪了功能检查和更改关闭括号例如DoSomething的

<html> 
    <head> 
     <title>JavaScript</title> 
    <script>  
    var target; 
    var guess_input; 
    var guesses = 0; 
    var finished = false; 
    var colors = ["black","blue","green","purple","red","white","yellow"]; 
      function doSomething(){ 


       var random = Math.random(); 
       var index = Math.floor(random * 7); 
       target = colors[index]; 
       while(!finished){ 
        guess_input = prompt("I am thinking of a color : black, blue, green, purple, red, white \n\n" + "What color am i thinking of?"); 
        guesses++; 
        finished = check();  
       } 
       var myBody = document.getElementsByTagName("body")[0]; 
       myBody.style.background = target; 
      } 

      function check(){ 
       if (guess_input > target){ 
        alert("your color is alphabetically higher than mine"); 
        return false; 
       } 

       if (guess_input < target){ 
        alert("your color is alphabetically lower than mine"); 
        return false; 
       } 

       if (guess_input == target){ 
        alert("your color is correct! it tooks you" + guesses "guesses to finish the game!"); 
        return true; 
       } 
       else { 
        alert("Sorry, I do not recoginize your color"); 
        return false; 
       } 
      } 
    </script> 
    </head> 
    <body onload="doSomething()"> 

    </body> 

    </html>