首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >异步加载jQuery

异步加载jQuery
EN

Stack Overflow用户
提问于 2011-06-20 02:22:57
回答 4查看 514关注 0票数 1

我的谷歌分析应该是异步加载的。我不确定这到底是什么意思:

代码语言:javascript
复制
<script type="text/javascript">
        var _gaq = _gaq || [];
        _gaq.push(['_setAccount', 'xxx']);
        _gaq.push(['_trackPageview']);

        (function () {
            var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
            ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
            var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
        })();
    </script>

我不需要jQuery立即可用。有没有一种方法也可以使其异步?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-06-20 02:28:20

Google Analytics在你的例子中是异步加载的。处理它的部分是ga.async = true;。异步意味着浏览器将继续加载其余内容,即使此内容需要更长时间才能加载。在较旧的浏览器中,内容将按照文档的顺序加载,如果加载速度较慢,浏览器显示页面的时间会更长。

如果希望jQuery异步加载,只需在<script>标记中添加async="async"即可。请记住,只有较新的浏览器才支持此功能。

或者,谷歌确实提供了Google Loader,允许您异步加载jQuery和许多其他库。你可以看看this Stack Overflow question的例子。

票数 3
EN

Stack Overflow用户

发布于 2011-06-20 02:24:55

HeadJS为这类事情提供了一个很好的API。

JavaScript加载器并行加载脚本,但按顺序执行

Head JS可以像图片一样加载JavaScript文件,而不会阻塞页面。即使只有一个组合文件,你的页面也会更快。

代码语言:javascript
复制
head.js("/path/to/jquery.js", "/google/analytics.js", "/js/site.js",
function() {
    // all done
});
票数 1
EN

Stack Overflow用户

发布于 2011-06-20 02:35:02

在页面的Onload ()事件上,您可以插入一个函数,该函数将在页面加载后自动分配对您想要以异步方式加载的JavaScript文件的引用。

代码语言:javascript
复制
function afterLoad(){
  var element1 = document.createElement(“script”);
  element1.src = “somefile.js”;
  element1.type=”text/javascript”;
  element1.async=true;
  document.getElementsByTagName(“head”)[0].appendChild(element1);
}

有关更多信息,请查看http://www.tutkiun.com/2010/07/load-javascript-after-pageload.html

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

https://stackoverflow.com/questions/6404292

复制
相关文章

相似问题

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