假设我们已经在使用async
或defer
,我们是否将<script>
标签贴在头部有什么关系?
有问题的脚本标记用于分析。显然,将脚本标签放在其他任何地方都是不合规格的,但我不在乎。
正如您已经指出的,脚本标签属于标头。不这样做的唯一原因是脚本是在处理 html 之前加载的,从而导致长时间等待渲染。这就是为什么许多人忽略了规范并将脚本嵌入在底部的原因。由于这不是一个好方法,编写规范的人引入了异步和延迟。所以没有理由将异步加载的代码放入正文中......
旁注:并非所有浏览器都支持异步和延迟。所以可能仍然使用旧的(非法;))解决方法...