截至目前,我正在使用这样的javascript
<script src="//netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/js/bootstrap.min.js"></script>
<script> $.fn.modal || document.write('<script src="js/bootstrap.min.js">\x3C/script>')</script>
我正在从bootstrapcdn加载bootstrap.css,就像这样
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap-combined.min.css" rel="stylesheet">
如果cdn服务器关闭,有人可以告诉我如何加载本地副本。
答案 0 :(得分:15)
我的解决方法是使用身体顶部的引导程序隐藏类样式来设置一个空div:
<div id="bootstrapCssTest" class="hidden"></div>
然后使用Javascript测试它,如果div可见则将其附加到头部:
<script type="text/javascript">
if ($('#bootstrapCssTest').is(':visible') === true) {
$('<link href="/localcopy/css/bootstrap.css" rel="stylesheet" type="text/css" />').appendTo('head');
}
</script>
答案 1 :(得分:1)
对文件执行jquery.Get()会有效吗? 根据结果,您可以知道它是否可用。 看到它在客户端上发生,本地缓存会使额外带宽无问题。
答案 2 :(得分:1)
This gist有一个代码片段,我发现它对于检测加载CSS回退的需要特别有用。
<link rel="stylesheet" href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap-combined.min.css" />
<script type="text/javascript">
function cssLoaded(href) {
var cssFound = false;
for (var i = 0; i < document.styleSheets.length; i++) {
var sheet = document.styleSheets[i];
if (sheet['href'].indexOf(href) >= 0 && sheet['cssRules'].length > 0) {
cssFound = true;
}
};
return cssFound;
}
if (!cssLoaded('bootstrap-combined.min.css')) {
local_bootstrap = document.createElement('link');
local_bootstrap.setAttribute("rel", "stylesheet");
local_bootstrap.setAttribute("type", "text/css");
local_bootstrap.setAttribute("href", "/Content/Styles/bootstrap-combined.min.css");
document.getElementsByTagName("head")[0].appendChild(local_bootstrap);
}
</script>
只需将/Content/Styles/bootstrap-combined.min.css
替换为您当地css的正确路径即可,
答案 3 :(得分:0)
试试这个,
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet">
<script>
function cssLoaded(href) {
var cssFound = false;
for (var i = 0; i < document.styleSheets.length; i++) {
var sheet = document.styleSheets[i];
if (
sheet['href'] == "http://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" ||
sheet['href'] == "https://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css") {
cssFound = true;
}
};
return cssFound;
}
if (!cssLoaded('bootstrap.min.css')) {
local_bootstrap = new CustomEvent('link');
local_bootstrap.setAttribute("rel", "stylesheet");
local_bootstrap.setAttribute("href", "/css/bootstrap.min.css");
document.getElementsByTagName("head")[0].appendChild(local_bootstrap);
}
</script>
<强> Source 强>