从html文件调用javascript文件无效

问题描述 投票:-1回答:2

我试图获取HTML文件来打印javascript文件的输出,但它似乎没有工作 - 我最终得到一个空白页。

我的HTML文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <script src="sketch.js"> setup()</script>       
</head>
<body>
    <div id="fog"></div>
</body>
</html>

我的javascript文件(sketch.js)

function setup() {
    s = "hello";
    document.getElementById('fog').innerText = s;        
}
javascript html
2个回答
1
投票

包括在关闭体标记附近调用setup的脚本,当调用id时,不存在带fog setup的dom

    <head>
     <meta charset="UTF-8">
     <script src="sketch.js"></script>       
    </head>
    <body>
     <div id="fog"></div>
    <script>setup()</script>
    </body>

1
投票

您的脚本标记是同步的,意味着解析器在完全解析html之前等待并执行脚本的内容。当您的脚本执行时,div甚至不存在。如果您不想推迟脚本或更改其位置,您至少可以使用DOMContentLoaded事件:

window.addEventListener(
    "DOMContentLoaded",
     function setup() {
          var s = "hello";
          document.getElementById('fog').innerText = s;        
     },
     false
);

在你的脚本中。

© www.soinside.com 2019 - 2024. All rights reserved.