jQuery CDN回退不';行不通

jQuery CDN回退不';行不通,jquery,cdn,fallback,google-cdn,Jquery,Cdn,Fallback,Google Cdn,我使用的是这个问题第二个答案的答案 解决方案说,如果Google的CDN不能正常工作,可以使用以下代码提供jQuery本地副本的回退: <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script>if (!window.jQuery) { document.write('<script src="/path/jquery.1.11.

我使用的是这个问题第二个答案的答案

解决方案说,如果Google的CDN不能正常工作,可以使用以下代码提供jQuery本地副本的回退:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script>if (!window.jQuery) { document.write('<script src="/path/jquery.1.11.1.min.js"><\/script>'); }
</script>

如果(!window.jQuery){document.write(“”);}
我已经实现了这段代码,并在安装了IIS的本地计算机上运行它。只要我有网络连接,它就可以正常工作。如果我禁用我的internet连接,它就不会返回到我的本地jQuery副本,web应用程序也会中断(即失去功能)


是否有一种新的方法来进行回退,或者我的测试方法有缺陷?

您甚至可以创建一个
脚本
元素,并将其添加到顶部,如图所示

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>

         <script>
            if(!window.jQuery){
              var script = document.createElement('script');
              script.src = 'jquery-1.11.2.min.js';
              document.head.appendChild(script);
            }    
         </script>

如果(!window.jQuery){
var script=document.createElement('script');
script.src='jquery-1.11.2.min.js';
document.head.appendChild(脚本);
}    

我在离线和在线两种情况下都试过了,效果都很好:)

它根本就没有注入回退脚本吗?如果添加“调试器;”在window.jQuery检查之后,它是否命中?jQuery的本地副本是否与CDN副本的版本相同?控制台中有什么错误?如果未加载jQuery,则应该是以下内容:
$is undefined
。您确定您的本地路径正确吗?我的本地副本是相同的版本。除了我的jQuery文件名是
jQuery.1.11.1.min.js
而不仅仅是
jQuery.min.js
@A.Wolff no之外,我使用的是1.11.1。我刚刚更新了我的问题。