Den*_*ort 5 jquery asynchronous pagespeed
通过头中的性能优化和非阻塞脚本,我一直在尝试异步加载 jquery 本身。
我遇到了一个jQuery Loader脚本,它异步加载 jquery,然后捕获和排队 jquery 文档就绪调用。这似乎在大部分时间都有效,但并非总是如此。
因此,如果加载程序在 x 秒内未完成,我创建了一个回退来加载本地 jquery 版本。回退有效,但不完全。有些部分可能有效,有些则无效。
加载 jquery 加载器脚本后,到目前为止在 head 中调用的脚本:
<script type="text/javascript">
function loadScript(url)
{
var head = document.getElementsByTagName('head')[0];
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = url;
head.appendChild(script);
}
var fallback_timer = setTimeout(function() {
loadScript('/path/to/local/js/jquery.js');
},5000);
jQl.loadjQ('//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js',function({clearTimeout(fallback_timer);});
</script>
Run Code Online (Sandbox Code Playgroud)
问题:
任何有 jQuery Loader (jQl) 经验的人都可以帮助解决它经常失败的问题?
谁能告诉我为什么在失败的情况下,只有我的其他一些 js 脚本可以工作,而有些却一直失败?
我非常愿意使用其他一些插件/脚本/方向来异步加载 jquery 核心。
澄清一下,我不是在考虑使用 jQuery 异步加载脚本,而是在支持加载 jquery 依赖脚本的同时异步加载 jquery 本身。
小智 0
首先从CDN加载jQuery,如果没有加载成功则从本地源加载。
我会推荐以下,
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript"> window.jQuery || document.write('<script src="js/libs/jquery-1.7.2.min.js"></script>')</script>
<script type="text/javascript" src="scripts.js"></scripts>
Run Code Online (Sandbox Code Playgroud)
来自使用 Javascript 加载 jQuery 并使用 jQuery
在您的代码中,您应该仅在未加载 jQuery 时加载 jQuery,并检查 Firebug 中的文件路径是否拼写错误(“网络”选项卡)
| 归档时间: |
|
| 查看次数: |
1702 次 |
| 最近记录: |