Javascript 如果资源无法加载,如何在本地加载资源而不是在CDN上加载?

Javascript 如果资源无法加载,如何在本地加载资源而不是在CDN上加载?,javascript,html,Javascript,Html,我在从CDN加载Bootstrap+jquery时遇到问题,有时它不会从CDN加载/导入 例如: <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="a

我在从CDN加载Bootstrap+jquery时遇到问题,有时它不会从CDN加载/导入 例如:

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">

它在打开时不会加载到站点中。 我想做的是在我的服务器中添加相同的文件,这样如果它无法从谷歌服务器上传这个文件,它就会从我的服务器加载它。 例如:

<link rel="stylesheet" href="#mydomain#/css/bootstrap.min.css">


我如何才能做到这一点,如果它成功地从CDN加载它,它将不会加载两次(有没有这样做的方法或更好的方法来实现这一点?)提前感谢

这段代码将处理脚本加载失败,并允许您添加将加载的回退属性

var scripts=document.querySelectorAll(“脚本[数据回退]”);
[]forEach.call(脚本、函数(脚本){
var listener=script.addEventListener(“错误”,函数(){
var newScript=document.createElement(“脚本”);
newScript.setAttribute(“src”,script.getAttribute(“数据回退”);
document.querySelector(“head”).appendChild(newScript);
});
});

您确定它没有加载吗?也许你加载东西的顺序不好,但cdn提供了相当可靠的可能的副本是的,由于某种原因,它没有被加载,这发生在Jquery和bootstrap中。它不是常量,但有时会发生,这是一个问题。为什么不总是从服务器加载?可以检查jQuery是否已加载(),如果未加载,则可以从服务器获取