UPDATE: сделать мой вопрос яснее, я упомянул следующий фрагмент кода и реализовать что-то similar-Запасной план погрузки fontawesome
<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js"></script>
<script type="text/javascript">
if (typeof jQuery == 'undefined') {
document.write(unescape("%3Cscript src='/js/jquery-1.4.2.min.js' type='text/javascript'%3E%3C/script%3E"));
}
</script>
я загружаю font-awesome.css
и запасной вариант в моем JSP
это ПУТЬ
<link type="text/css" rel="stylesheet" href="//netdna.bootstrapcdn.com/font-awesome/3.1.1/css/font-awesome.min.css" />
<script>
function fallbackForFontAwesome() {
if (typeof bootstrapcdn == "undefined") {
document.write(unescape('%3Clink type="text/css" rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/font-awesome/3.1.1/css/font-awesome.min.css" /%3E'));
if (typeof cloudflare == "undefined") {
document.write(unescape('%3Clink type="text/css" rel="stylesheet" href="/common/fontawesome/css/font-awesome.min.css" /%3E'));
} else {
alert('loading from cloudfare');
}
} else {
alert('loading from bootstrap cdn');
}
}
fallbackForFontAwesome();
</script>
в соответствии с этим фрагмент кода, я ожидал исполнения alert('loading from bootstrap cdn');
произойдет. Но это не так. Учитывается ли код if (typeof bootstrapcdn == "undefined")
и if (typeof cloudflare == "undefined")
, если css загружен из соответствующих URL-адресов или нет? Я что-то не так?
Откуда взялись переменные 'bootstrapcdn' и' cloudflare'? Вы загружаете файл CSS ('netdna.bootstrapcdn.com/font-awesome/3.1.1/css/font-awesome.min.css'), а не файл JavaScript. Ваш пример о 'jQuery' работает, потому что вы загружаете JS-файл, поэтому на самом деле это не тот случай, который вам нужен – pomeh
Oh. Я не знал, что мы можем загружать только js таким образом, а не только любой файл в целом. В любом случае, я мог бы это достичь? – AlwaysALearner
На самом деле, моя точка зрения была такой: в примере jQuery вы загружаете файл jQuery ** JS **, который действительно определяет переменную JavaScript с именем 'jQuery'. В вашем примере вы загружаете font-awesome ** CSS ** файл, который действительно ** НЕ ОПРЕДЕЛИЕТ любую переменную JavaScript. Таким образом, нет такой JS-переменной 'bootstrapcdn' и' cloudflare'. Чтобы проверить, успешно ли загружен файл CSS, вам понадобится умный совет, о котором я не знаю. – pomeh