gpt4 book ai didi

javascript - 当 CDN 关闭时加载 jQuery 的备份副本

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:51:52 25 4
gpt4 key购买 nike

我在用于初始化所有应用程序的脚本中包含这段代码,它从谷歌 CDN 加载 jQuery 以及我们所有应用程序所需的其他一些东西。然后,当我们加载特定程序功能时,我们检查以确保 jquery 已加载,以防 CDN 出现故障。我遇到的问题是它仍在加载第二个。如果我在 headTag.appendChild(jqTag); 行之后添加一个简单的 alert("Test"); 它会完美运行,但如果我删除警报,它会使用第二个一。给了什么?

它们是这样加载的:

<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 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>

关于javascript - 当 CDN 关闭时加载 jQuery 的备份副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13746489/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com