繁体   English   中英

对非阻塞脚本的痴迷

[英]Obsession with non-blocking scripts

由于我发现了非阻塞脚本的概念,我已经开始着迷于以这种方式加载所有外部脚本。 我甚至砍了Joomla! 模板(我知道这是一个不好的做法),以便在index.php文件中加载非阻塞脚本。 示例代码如下。

(function() {
    var script = document.createElement('script'),  head = document.getElementsByTagName('head')[0]; 

    script.type = 'text/javascript'; 
    script.src = "http://www.mywebsite.com/scripts/one_of_many.js"
    head.appendChild(script);
})();

我的问题是:

何时加载非阻塞脚本是好还是坏?

使用非阻塞脚本的限制应该是什么?

您用于非阻塞脚本(附加脚本DOM元素)的技术不会在所有浏览器上保留脚本执行顺序,仅限于Firefox和Opera。

如果您不关心执行顺序,那么您可以安全地使用它。

如果没有,您可以将其与其他一些技术结合使用,例如IE的脚本延迟,iframe中的脚本或XHR。

关于更快网站的更多细节

如果您正在加载大量文件,即使是非阻塞文件,只需将它们放在</body>标记之前的html即可实现,因为浏览器会在页面上找到它们时执行操作,如果您装载了不少。

它很好,但它更好地看到合并文件和缩小/障碍,以减少更多的时间。 另一个显而易见的事情是确保你正在GZipping JS到浏览器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM