使用javascript进行硬币翻转



我试图在单击按钮时显示头或尾。我不确定哪里出了问题。这似乎是一件很简单的事情,但也许我错过了什么?这是我的东西。

 <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>Assignment 9</title> 
        <link href="images/avatar.png" rel="shortcut icon" type="image/png">
        <link href="css/stylesheet.css" rel="stylesheet" type="text/css">
        <script src="js/javascript.js" type="text/javascript"></script>
        <style type="text/css">
        .auto-style1 {
            text-align: center;
        }
        </style>
        <script type="text/javascript">
        </script>
    </head>
    <body>
    <header>
    </header>
    <aside>
    </aside>
    <div id="main">
    <h1> Arrays and Coditional Statements</h1>
    <h2 class="auto-style1"> Quote of the Day</h2>

    <h2 class="auto-style1">Flip a coin </h2>
    <script>
  <script>
function myFunction1{
var x =Math.floor(Math.random()*2);
if ( x==0){
document.getElementById("Coin").innerHTML= "Heads";
}
else{
document.getElementById("Coin").innerHTML= "Tails";
}}
myFunction1();

</script>
<button type="button" onclick="myFunction1" id="Coin"> CLick ME</button>

    </div>
    <footer>
    </footer>
    </body>
    </html>

您可以使用这一行JavaScript来获取headstails

console.log(Math.random() >= 0.5 ? "heads" : "tails")

myFunction1 之后忘记()

您不是在调用onclick属性中的函数,您只是在命名它。函数是通过在函数名称后面放()(将参数括起来)来调用的。所以应该是

onclick="myFunction1()"

几件事:

  1. 冗余script标签刚好在实际需要的标签下方
  2. 您的onclick呼叫需要()-onclick="myFunction1()"
  3. 在函数定义上还需要()function myFunction1() {
  4. 在第一次调用myFunction1()时,Coin元素还不存在-将脚本放在该元素的创建之后,或放在window.onload处理程序中

将这些修复放在一起:

<button type="button" onclick="myFunction1()" id="Coin">CLick ME</button>
<script>
  function myFunction1() {
    var x = Math.floor(Math.random() * 2);
    console.log(x);
    if (x == 0) {
      document.getElementById("Coin").innerHTML = "Heads";
    } else {
      document.getElementById("Coin").innerHTML = "Tails";
    }
  }
  myFunction1();
</script>

当您解决这些问题时,JavaScript控制台会一个接一个地告诉您这些问题。我建议熟悉它。

以下是解决方案:

作业9.auto-style1{文本对齐:居中;}

数组和编码语句

<h2 class="auto-style1"> Quote of the Day</h2>

<h2 class="auto-style1">Flip a coin </h2>

CLick ME

myFunction1();
function myFunction1() {
var x =Math.floor(Math.random()*2);
if ( x==0){
document.getElementById("Coin").innerHTML= "Heads";
}
else{
document.getElementById("Coin").innerHTML= "Tails";
}
}

</div>
<footer>
</footer>
</body>
</html>

最新更新