【问题标题】:Is there any difference between including JavaScript right before the </body> tag and right before the </html> tag? [duplicate]在 </body> 标记之前和 </html> 标记之前包含 JavaScript 有什么区别吗? [复制]
【发布时间】:2012-12-19 17:15:38
【问题描述】:

可能重复:
Is it wrong to place the <script> tag after the </body> tag?

//scripts
</body>
</html>

</body>
//scripts
</html>

我知道这是一个愚蠢的问题,但这两种方法之间有什么区别。我读过在&lt;/body&gt; 标签之前做的书,但实际上我看到人们在&lt;/html&gt; 标签之前做。我的直觉和目前的调查结果表明,我认为这无关紧要,但由于我是 Web 开发的新手,所以我总是第二次猜测我的工作,因为可能有一些我不知道的事情。

【问题讨论】:

  • 我不相信&lt;script&gt; 标签是&lt;html&gt; 的有效子标签。
  • 我不认为标签是允许在头部或身体标签之外的。
  • 它不是有效的 HTML,
  • 这似乎是可以通过查看W3C HTML spec 来回答的问题类型。只是说......
  • @BrianDriscoll 等一下?这东西是标准化的吗? :P

标签: javascript html optimization


【解决方案1】:

cmets 是正确的:headbody 之外的 &lt;script&gt; 不是有效的 HTML。

Here is the relevant spec

内容模型

A head element followed by a body element.

【讨论】:

  • "如果我只是重复在 cmets 中所说的话,并将其作为答案发布,我会得到很多代表。我是个天才!" @ 987654326@
  • @ŠimeVidas 嘿,如果评论者不想要代表,我会接受。 ;-) 也就是说,我已经添加了相关信息。
  • @Mathletics 这个问题实际上应该被关闭,这就是为什么评论者没有费心发布答案的原因。
  • @Mathletics 您引用了 HTML 5.1 nightly 规范吗?天哪,我爱你。 :)
  • @jfrej 我怪帽子。
【解决方案2】:

我不是专家,但根据我的经验,只要您的 JS 在 header 或 body 标记中,放置 JS 的位置并没有太大的区别。

我和我的同事总是将我们的 JS 放在 header 标签中(为了可读性和一致性)。但我读过(herehere),为了获得最佳性能,您应该将 JS 放在结束 BODY 标记之前。同样,根据我的经验,我没有注意到主要的性能差异。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-25
    • 1970-01-01
    • 1970-01-01
    • 2011-09-12
    • 2015-11-22
    • 1970-01-01
    • 2012-02-20
    • 1970-01-01
    相关资源
    最近更新 更多