簡體   English   中英

此 JavaScript 代碼不起作用。 我的語法錯誤還是其他原因?

[英]This JavaScript code is not working. Have I got the syntax wrong or is it something else?

這段代碼沒有像我希望的那樣工作,但我不確定是什么問題。


代碼:

<body>
  var randNumForQuote = Math.floor((Math.random() * 11));

  if (randNumForQuote == 0) {
    document.getElementById("quoteDiv").innerHTML = "Hello";
  } else if (randNumForQuote == 1) {
    document.getElementById("quoteDiv").innerHTML = "Hello1";
  } else if (randNumForQuote == 2) {
    document.getElementById("quoteDiv").innerHTML = "Hello2";
  } else if (randNumForQuote == 3) {
    document.getElementById("quoteDiv").innerHTML = "Hello3";
  } else if (randNumForQuote == 4) {
    document.getElementById("quoteDiv").innerHTML = "Hello4";
  } else if (randNumForQuote == 5) {
    document.getElementById("quoteDiv").innerHTML = "Hello5";
  } else if (randNumForQuote == 6) {
    document.getElementById("quoteDiv").innerHTML = "Hello6";
  } else if (randNumForQuote == 7) {
    document.getElementById("quoteDiv").innerHTML = "Hello7";
  } else if (randNumForQuote == 8) {
    document.getElementById("quoteDiv").innerHTML = "Hello8";
  } else if (randNumForQuote == 9) {
    document.getElementById("quoteDiv").innerHTML = "Hello9";
  } else if (randNumForQuote == 10) {
    document.getElementById("quoteDiv").innerHTML = "Hello10";
  }

  <div id="quoteDiv"></div>
</body>


我對 JavaScript 的經驗有限,所以不太了解這個問題。

我期待 div 說出輸出之一(例如, Hello, Hello1, Hello2, etc.

您需要將 JavaScript 代碼放在script標簽中,並在頁面加載后運行代碼,因此放在window.onload回調中,該回調在文檔加載過程結束時觸發。

 <body> <script> window.onload = function() { var randNumForQuote = Math.floor((Math.random() * 11)); if (randNumForQuote == 0) { document.getElementById("quoteDiv").innerHTML = "Hello"; } else if (randNumForQuote == 1) { document.getElementById("quoteDiv").innerHTML = "Hello1"; } else if (randNumForQuote == 2) { document.getElementById("quoteDiv").innerHTML = "Hello2"; } else if (randNumForQuote == 3) { document.getElementById("quoteDiv").innerHTML = "Hello3"; } else if (randNumForQuote == 4) { document.getElementById("quoteDiv").innerHTML = "Hello4"; } else if (randNumForQuote == 5) { document.getElementById("quoteDiv").innerHTML = "Hello5"; } else if (randNumForQuote == 6) { document.getElementById("quoteDiv").innerHTML = "Hello6"; } else if (randNumForQuote == 7) { document.getElementById("quoteDiv").innerHTML = "Hello7"; } else if (randNumForQuote == 8) { document.getElementById("quoteDiv").innerHTML = "Hello8"; } else if (randNumForQuote == 9) { document.getElementById("quoteDiv").innerHTML = "Hello9"; } else if (randNumForQuote == 10) { document.getElementById("quoteDiv").innerHTML = "Hello10"; } } </script> <div id="quoteDiv"></div> </body>


雖然你可以減少代碼

 <body> <script> window.onload = function() { var randNumForQuote = Math.floor((Math.random() * 11)); document.getElementById("quoteDiv").innerHTML = "Hello" + (randNumForQuote ? " " + randNumForQuote : ''); } </script> <div id="quoteDiv"></div> </body>

Javascript 需要在腳本標簽中,如果它在 html 中,並且你需要讓 div 出現在腳本標簽之前。

 <body> <div id="quoteDiv"></div> <script> var randNumForQuote = Math.floor((Math.random() * 11)); if (randNumForQuote == 0) { document.getElementById("quoteDiv").innerHTML = "Hello"; } else if (randNumForQuote == 1) { document.getElementById("quoteDiv").innerHTML = "Hello1"; } else if (randNumForQuote == 2) { document.getElementById("quoteDiv").innerHTML = "Hello2"; } else if (randNumForQuote == 3) { document.getElementById("quoteDiv").innerHTML = "Hello3"; } else if (randNumForQuote == 4) { document.getElementById("quoteDiv").innerHTML = "Hello4"; } else if (randNumForQuote == 5) { document.getElementById("quoteDiv").innerHTML = "Hello5"; } else if (randNumForQuote == 6) { document.getElementById("quoteDiv").innerHTML = "Hello6"; } else if (randNumForQuote == 7) { document.getElementById("quoteDiv").innerHTML = "Hello7"; } else if (randNumForQuote == 8) { document.getElementById("quoteDiv").innerHTML = "Hello8"; } else if (randNumForQuote == 9) { document.getElementById("quoteDiv").innerHTML = "Hello9"; } else if (randNumForQuote == 10) { document.getElementById("quoteDiv").innerHTML = "Hello10"; } </script> </body>

<html>
<body> 
    <div id="quoteDiv"></div>



</body>
<script>
// self executing function here

   var randNumForQuote = Math.floor((Math.random() * 11));

  if (randNumForQuote == 0) {
    document.getElementById("quoteDiv").innerHTML = "Hello";
  } else if (randNumForQuote == 1) {
    document.getElementById("quoteDiv").innerHTML = "Hello1";
  } else if (randNumForQuote == 2) {
    document.getElementById("quoteDiv").innerHTML = "Hello2";
  } else if (randNumForQuote == 3) {
    document.getElementById("quoteDiv").innerHTML = "Hello3";
  } else if (randNumForQuote == 4) {
    document.getElementById("quoteDiv").innerHTML = "Hello4";
  } else if (randNumForQuote == 5) {
    document.getElementById("quoteDiv").innerHTML = "Hello5";
  } else if (randNumForQuote == 6) {
    document.getElementById("quoteDiv").innerHTML = "Hello6";
  } else if (randNumForQuote == 7) {
    document.getElementById("quoteDiv").innerHTML = "Hello7";
  } else if (randNumForQuote == 8) {
    document.getElementById("quoteDiv").innerHTML = "Hello8";
  } else if (randNumForQuote == 9) {
    document.getElementById("quoteDiv").innerHTML = "Hello9";
  } else if (randNumForQuote == 10) {
    document.getElementById("quoteDiv").innerHTML = "Hello10";
  }
</script>

</html>

暫無
暫無

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

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