ios*_*s85 3 javascript jquery cdn
我在用于初始化所有应用程序的脚本中有这个代码,它从谷歌CDN加载jQuery以及我们所有应用程序所需的其他几个东西.然后,当我们加载特定的程序功能时,我们检查以确保jquery已加载,以防CDN关闭.我遇到的问题是它仍在加载第二个.如果我alert("Test");在行之后添加一个简单的headTag.appendChild(jqTag);它可以很好地工作,但是如果我删除警报它会使用第二个.是什么赋予了?
他们像这样加载:
<script type="text/javascript" src="i-initializer.js"></script>
<script type="text/javascript" src="i-program.js"></script>
Run Code Online (Sandbox Code Playgroud)
初始化脚本:
if(typeof jQuery=='undefined'){
var headTag = document.getElementsByTagName("head")[0];
var jqTag = document.createElement('script');
jqTag.type = 'text/javascript';
jqTag.src = 'http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js';
headTag.appendChild(jqTag);
}
Run Code Online (Sandbox Code Playgroud)
然后在另一个脚本中我们有以下内容:
if(typeof jQuery=='undefined'){
var header = document.getElementsByTagName("head")[0];
var qtag = document.createElement('script');
qtag.type = 'text/javascript';
qtag.src = 'http://feedback.oursite.com/scripts/jquery-1.8.3.min.js';
qtag.onload = checkjQueryUI;
header.appendChild(qtag);
}
else
{
jQCode();
}
jQCode() {
...
}
Run Code Online (Sandbox Code Playgroud)
Bla*_*ger 14
这是HTML5 Boilerplate使用的技术.首先,它加载Google CDN脚本,然后立即检查全局jQuery对象是否存在 - 如果不存在,则CDN失败并加载本地副本.
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/vendor/jquery-1.8.3.min.js"><\/script>')</script>
Run Code Online (Sandbox Code Playgroud)