首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否应该使用HeadJS将所有JavaScript代码放在头部?

是否应该使用HeadJS将所有JavaScript代码放在头部?
EN

Stack Overflow用户
提问于 2013-06-07 23:15:50
回答 2查看 708关注 0票数 2

我正在使用HeadJS来加载我所有的JavaScript代码在我的网站头部。我是否应该执行以下操作,用HeadJS将所有JavaScript加载到头部?

代码语言:javascript
复制
<script src="/-/js/head.js"></script>

<script>
    head.js("https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js")
        .js("/-/js/slideshow.js")
        .js("/-/js/modernizr.js")
        .js("/-/js/cookie.js")
        .js("/-/js/thumbs.js")
        .js("/-/js/infinitescroll.js")
        .js("/-/js/manual-trigger.js")
        .js("/-/js/easing.js")
        .js("/-/js/thumbs.js")
        .js("/-/js/popup.js")
        .js("/-/js/sharre.js")
        .js("/-/js/selectivizr.js")
        .js("/-/js/scripts.js");
</script>

此外,文件'scripts.js‘是我自己的jQuery脚本,它在头部使用了其他JavaScript脚本。这是运行优化的最好方法吗?

我用来包装这个文件中的所有代码:

代码语言:javascript
复制
head.ready(function() { my code });
EN

回答 2

Stack Overflow用户

发布于 2013-06-20 02:48:59

正确的做法是并行下载资源,这样就不会有任何资源阻止其他资源的下载,例如阻止内容呈现的脚本。理想情况下,您应该先下载CSS,然后按照重要性/依赖性的顺序并行下载脚本。例如,您希望在下载与jQuery相关的脚本之前下载jQuery代码,并且在下载“装饰性”脚本之前下载您的功能。

同样,它们何时开始下载是无关紧要的,只要它们不阻止其他资产(即CSS和内容)。

在操作中,根据我的快速学习,你的方法看起来是正确的。据我所知,headjs可以并行下载,但可以按顺序执行(您可以指定顺序)。您所使用的方法将执行任何最先到达的脚本。你很有冒险精神!^_^

不幸的是,我不知道你的每个脚本的功能重要性,但我建议重新排序,比如:

代码语言:javascript
复制
<script>
head.js("https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js",
    "/-/js/modernizr.js",
    "/-/js/selectivizr.js",
    "/-/js/cookie.js",
    etc...
    );
</script>

这将并行下载脚本,但按此顺序执行。您需要使用,分隔每个脚本,才能使用“并行下载,按顺序执行”方法。

我认为:仍在调查-您还可以选择包含条件下载,使用:

代码语言:javascript
复制
head.browser.ie(insert scripts);

Check out the awesomeness.

当我看到Internet Explorer的条件加载时(别提其他事情了),我考虑把我第一个出生的孩子给开发人员。

票数 9
EN

Stack Overflow用户

发布于 2013-06-08 02:05:16

您应该始终尝试put your scripts at the bottom just before the closing body tag

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16987499

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档