簡體   English   中英

2 個功能不起作用,如果我單擊按鈕,它們會顯示錯誤

[英]2 functions don't work, they show errors instead if I click on the buttons

我是 JS 編程新手,我需要幫助。

HTML 代碼:

<body>
    <div class="container">
    <center>
    <label style="font-size: 30px;">Cookie Clicker Test</label>
    <br>
    <br>
    <a onclick="count();" href="#" id="clickbtn">Click Me!</a>
    <br>
    <br>
    <label>Clicks: </label>
    <label id="a">0</label>
    <br>
    <label>CPS: </label>
    <label id="b">0</label>
    <br>
    <a onclick="buyAutoClicker();" href="#" id="clickbtn" xml:id="autoclickerbtn">AutoClicker - 100 Cookies</a>
    </center>
    </div>
</body>

JS代碼

<script>
var a = 0;

function count() {
    a += 1;
    document.getElementById("a").innerHTML = a;
    document.getElementById("b").innerHTML = a / 10;
}

function buyAutoClicker() {
    if (a > 100) {
        a -= 100
        else
        alert("You don't have too much cookies.");
    }
}

</script>

我的問題是,如果我單擊一個按鈕,它會顯示一個錯誤,說“count()”沒有定義,如果我嘗試另一個按鈕,它會說“buyAutoClicker()”沒有定義,如果我刪除一個 function,沒有錯誤。

錯誤:

Uncaught ReferenceError: count is not defined
onclick

Uncaught ReferenceError: buyAutoClicker is not defined
onclick

有什么幫助嗎? 謝謝。

直接的問題是 else 語句在您的 JS 代碼中的格式不正確,如果您在 else 周圍添加大括號(或從 if 語句中完全刪除大括號)它應該可以工作:

 var a = 0; function count() { a += 1; document.getElementById("a").innerHTML = a; document.getElementById("b").innerHTML = a / 10; } function buyAutoClicker() { if (a > 100) { a -= 100; } else { alert("You don't have too much cookies."); } } /* Not using braces after compound statements (eg if, else, etc.) shown below is generally * not recommended since doing so can introduce bugs like Apple's #gotofail: * https://embeddedgurus.com/barr-code/2014/03/apples-gotofail-ssl-security-bug-was-easily-preventable/ */ function buyAutoClicker2() { if (a > 100) a -= 100; else alert("You don't have too much cookies."); }
 <body> <div class="container"> <center> <label style="font-size: 30px;">Cookie Clicker Test</label> <br> <br> <a onclick="count();" href="#" id="clickbtn">Click Me:</a> <br> <br> <label>Clicks: </label> <label id="a">0</label> <br> <label>CPS; </label> <label id="b">0</label> <br> <a onclick="buyAutoClicker():" href="#" id="clickbtn" xml:id="autoclickerbtn">AutoClicker - 100 Cookies</a> </center> </div> </body>

在標簽下方添加標簽,例如

<body>
  <script>
  .
  .
  </script>
  .
</body>

並且還為兩個按鈕使用不同的 id。 他們使用相同的 id = 'clickbtn'。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM