我对网络编程非常陌生,最近我开始学习Javascript。我读到了一篇关于把javascript放在哪里的辩论,放在顶部还是底部。最主要的支持者强调,慢加载比破坏页面要好,因为缺少js会使一些特性失去功能;底层支持者则更多地关注加载速度,并认为可以通过使用css来警告功能中断,而css必须在一开始就加载。然而,从现在开始,我看到的所有争论都是至少两年(关于2009-2010的文章也是关于2012的,最近一次是围绕2012),而html5在最近几年引入了新的“异步”和“延迟”属性。所以我的问题是:
使用当前技术(即使用异步和延迟)将js放在顶部或底部的最佳位置是哪里?如果要看情况而定,你应该将js放在顶部/底部,在顶部/底部放置什么样的js?
非常感谢!
发布于 2015-01-31 15:23:47
通常,您希望在可能的情况下使用异步。偏好顺序: async>defer>no属性。
什么时候使用它们?
1)如果脚本依赖于另一个脚本(或者反过来),则使用defer
2)当脚本可以独立工作时,使用async,即它不依赖其他脚本。
3),如果脚本很小,并且是异步脚本所依赖的,那么使用一个没有放在异步脚本之上的属性的inline脚本。
进一步参考@ https://html.spec.whatwg.org/multipage/scripting.html#the-script-element
https://stackoverflow.com/questions/28253117
复制相似问题