我在我們用來初始化所有應用程序的腳本中有這樣的代碼,它從我們所有應用程序需要的其他東西中加載了來自google CDN的jQuery。然後當我們加載特定的程序功能時,我們檢查以確保jquery已加載,以防CDN停機。我遇到的問題是它仍在加載第二個。如果我在行headTag.appendChild(jqTag);
後添加一個簡單的alert("Test");
,它可以很好地工作,但是如果我刪除警報,它會使用第二個。是什麼賦予了?當CDN關閉時,加載jQuery的備份副本
它們加載像這樣:
<script type="text/javascript" src="i-initializer.js"></script>
<script type="text/javascript" src="i-program.js"></script>
初始化腳本:
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);
}
然後在另一個腳本中,我們有以下幾點:
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() {
...
}
很有意思。 HTML5樣板看起來是一個非常好的模型。謝謝你的提示。 – ios85