在HTML文档中嵌入JavaScript时,在哪里放置<script>标记和包含的JavaScript?我似乎记得,你不应该把这些放在<head>部分,但放在<body>部分的开头也是不好的,因为JavaScript必须在页面完全呈现之前进行解析(或类似的)。这似乎将<body>部分的结尾作为<script>标记的逻辑位置。

那么,哪里是放置<script>标记的正确位置?

(这个问题引用了这个问题,其中建议将JavaScript函数调用从<a>标记移动到<script>标记。我专门使用jQuery,但更一般的答案也是合适的。)


当前回答

编写JavaScript代码的最佳位置是在</body>标记之后或之前的文档末尾,以先加载文档,然后执行JavaScript代码。

<script> ... your code here ... </script>
</body>

如果您在jQuery中编写,以下内容可以在头文档中,并且将在文档加载后执行:

<script>
    $(document).ready(function(){
        // Your code here...
    });
</script>

其他回答

这取决于。如果您正在加载一个脚本,该脚本是设置页面样式所必需的/使用页面中的操作(如单击按钮),那么最好将其放在顶部。如果你的样式是100%CSS,并且你有所有按钮操作的回退选项,那么你可以把它放在底部。

或者最好的做法(如果这不是问题)是,你可以制作一个模态加载框,将JavaScript代码放在页面底部,并在加载脚本的最后一行时使其消失。这样可以避免用户在加载脚本之前在页面中使用操作。也要避免不正确的造型。

    <script src="myjs.js"></script>
</body>

脚本标记应始终在正文关闭之前使用,或在HTML文件的底部使用。

页面将加载HTML和CSS,稍后将加载JavaScript。

如果需要,请选中此项:

http://stevesouders.com/hpws/rule-js-bottom.php

事实证明,它无处不在。

您可以使用类似jQuery的方法来延迟执行,这样它放在哪里就不重要了(除了解析过程中的小性能影响)。

最好将其放在</body>结束标记之前。

为什么?根据官方文件:https://developer.mozilla.org/en-US/docs/Learn/Getting_started_with_the_web/JavaScript_basics#a_hello_world!_实例

注:说明(上面)放置元素的原因HTML文件的底部附近是浏览器在在文件中显示的顺序。如果JavaScript首先加载,并且它应该会影响HTML尚未加载,可能会出现问题。放置JavaScript靠近HTML页面底部是一种适应这种情况的方法附属国。要了解有关替代方法的更多信息,请参见脚本加载策略。

通常,我们必须在结束体标记之前放置脚本,以期待某些特定场景。

例如:

`<html> <body> <script> document.getElementById("demo").innerHTML = "Hello JavaScript!"; </script> </body> </html>`