如何推迟加载JavaScript文件?

时间:2011-07-07 13:47:57

标签: javascript

我不想在启动时调用JavaScript函数。原因很简单,它会减少初始下载大小,页面显示速度会更快。为此,我在head section中使用了以下代码..

<script type="text/javascript">
 // Add a script element as a child of the body
 function downloadJSAtOnload() {
 var element = document.createElement("script");
 element.src = "deferredfunctions.js";
 document.body.appendChild(element);
 }

 // Check for browser support of event handling capability
 if (window.addEventListener)
 window.addEventListener("load", downloadJSAtOnload, false);
 else if (window.attachEvent)
 window.attachEvent("onload", downloadJSAtOnload);
 else window.onload = downloadJSAtOnload;
</script>

但它没有用......请帮帮我

3 个答案:

答案 0 :(得分:4)

通常情况下,最好将脚本放在身体末端,然后立即调用它们。

脚本阻止加载页面,因此将它们放在正文的末尾可以快速加载页面,并且javascript将加载页面已经准备就绪。

答案 1 :(得分:1)

document.head.appendChild(element)

答案 2 :(得分:1)

您可以使用<script defer>(HTML脚本代码的延迟属性)。

示例:

<script src="link/to/yourfile.js" defer></script>

defer将在HTML解析期间下载该文件,并且仅在解析器完成后才执行该文件。延迟脚本也保证按照它们在文档中出现的顺序执行。