【问题标题】:weird HTML output [closed]奇怪的 HTML 输出
【发布时间】:2016-03-21 14:56:36
【问题描述】:

当我打开 html 文件时,会出现一个奇怪的输出。

短语-o_Matic 说:

这是怎么回事? 也没有 JS 的 IDE 可以告诉我那里的错误吗?

我使用 Atom 作为我的文本编辑器。

代码 -

    <!doctype html>
<html lang="en">
<head>
  <title>Phrase-o-matic</title>
<meta charset="utf-8">
<style>
body {
  font-family: Verdana , Helvetica ,sans-serif;
}
</style>
<script>
function makePhrases() {
  var words1 = ["24/7" , "multi_Tier" , "30,000 foot","B-to-B","win-win"];
  var words2 = ["xyz","abcd","batch","retired","morning"];
  var words3 = ["super","shot","shake","Sunny"];

  var rand1 = Math.floor(Math.random() * words1.length);
  var rand2 = Math.floor(math.random() * words2.length);
  var rand3 = Math.floor(Math.random() * words3.length);

  var phrase = words1[rand1] + " " + words2[rand2] + " " +words3[rand3];
  var phraseElement = document.getElementById("phrase");
  phraseElement.innerHTML = phrase;
}
window.onload = makePhrases;
</script>
</head>
<body>
  <h1>Phrase-o_Matic says;</h1>
  <p id="phrase"></p>
</body>
</html>


}

【问题讨论】:

  • 还有一个不好的问题主体
  • 请阅读How to Ask a Good Question,然后相应地编辑您的问题。
  • 另外,请学习如何阅读调试控制台,以便查看自己的脚本错误。
  • 我没有使用 IDE。我可以使用 Web 浏览器的开发者控制台查看调试控制台吗?

标签: javascript html


【解决方案1】:

两个错误:

1) '}' 在关闭的“html”标签后结束

2) " var rand2 = Math.floor(math.random() * words2.length);", m 必须像 Math.random() 一样大写。

下面的代码可以工作。

    <!doctype html>
<html lang="en">
<head>
  <title>Phrase-o-matic</title>
<meta charset="utf-8">
<style>
body {
  font-family: Verdana , Helvetica ,sans-serif;
}
</style>
<script>
function makePhrases() {
  var words1 = ["24/7" , "multi_Tier" , "30,000 foot","B-to-B","win-win"];
  var words2 = ["xyz","abcd","batch","retired","morning"];
  var words3 = ["super","shot","shake","Sunny"];

  var rand1 = Math.floor(Math.random() * words1.length);
  var rand2 = Math.floor(Math.random() * words2.length);
  var rand3 = Math.floor(Math.random() * words3.length);

  var phrase = words1[rand1] + " " + words2[rand2] + " " +words3[rand3];
  var phraseElement = document.getElementById("phrase");
  phraseElement.innerHTML = phrase;
}
window.onload = makePhrases;
</script>
</head>
<body>
  <h1>Phrase-o_Matic says;</h1>
  <p id="phrase"></p>
</body>
</html>

【讨论】:

    【解决方案2】:

    你写var rand2 = Math.floor(math.random() * words2.length);而不是var rand2 = Math.floor(Math.random() * words2.length);

    【讨论】:

      【解决方案3】:

      Math 中有一个小写的“m”代表rand2。这应该是大写的。

      【讨论】:

        猜你喜欢
        • 2012-10-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-03
        • 2015-02-18
        • 2011-06-14
        相关资源
        最近更新 更多