【问题标题】:js code does not work in html as a separate file (no jQuery)js 代码在 html 中不能作为单独的文件工作(没有 jQuery)
【发布时间】:2018-09-25 23:28:57
【问题描述】:

我有一个非常简单的Javascript 函数(我没有使用jQuery),它可以在html 中使用<script> 标记,但是当我将它放在单独的@987654326 中时它不起作用@ 文件。我知道我做错了什么,这可能只是一个简单的修复,但我无法弄清楚。有什么帮助吗?非常感谢!

这是我的 js:

function create() {
  var htmlElements = "";
  for (var i = 0; i < 5; i++) {
    htmlElements += '<div class="box">' + i + '</div>';
  }

  var container = document.getElementById("box");
  container.innerHTML = htmlElements;
}

和html:

 <head>
      <script src="main.js"></script>
 </head>
 <body>
      <div id="box">
      <script>create();</script>
    </div>
 </body>

jsfiddle:http://jsfiddle.net/p5hzA/129/

【问题讨论】:

  • 在调用其中的任何函数之前需要包含外部js文件。
  • @jmoerdyk 我试过了,但没用...
  • 意思是,你必须把你定义函数的地方移到你调用它的地方。
  • 我尝试将 放入 但它不起作用
  • 请定义“不工作”。另外,更新您的问题以匹配您的代码

标签: javascript html web frontend


【解决方案1】:

只需移动行 &lt;script src="main.js"&gt;&lt;/script&gt;

在此之上 &lt;script&gt;create();&lt;/script&gt;

请注意:在 javascript 练习期间,您应该始终检查 javascript 控制台(在 Windows 上:在 Firefox 中按 Ctrl+Shift+J,在 Chrome 中按 F12 按钮)

【讨论】:

  • 按照我说的检查javascript控制台。
  • 我将 移到了头部并检查了控制台,它说“未定义创建”,但我定义了它...... @阿尔弗帕西诺
  • 我刚刚更新了这个问题。你会看一下吗?谢谢!
  • 您的代码有效,我猜您在其他地方犯了错误。
  • 它仍然不起作用我用 jsfiddle 链接更新问题
【解决方案2】:

你在包含外部文件之前运行 create(),函数应该在包含外部文件之后运行

【讨论】:

    猜你喜欢
    • 2021-05-04
    • 2021-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-04
    • 1970-01-01
    相关资源
    最近更新 更多