Подтвердить что ты не робот

Загрузка jQuery из Google или локально, если не в Интернете

Сейчас у меня есть следующие ссылки в моем коде:

<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>

и т.д.

Я хотел бы использовать кешированные копии google.com. Я слышал, что google - лучший источник, но, пожалуйста, поправьте меня, если я ошибаюсь.

В любом случае, это возможно для моего кода для моего приложения, поэтому он использует код из Google, если он доступен, и локально, если нет. FYI Я использую Microsoft MVC3 и облачные серверы Msoft.

Спасибо

4b9b3361

Ответ 1

Конечно, посмотрите, как они это делают в HTML5-шаблоне.

Если вы посмотрите на нижнюю часть файла index.html в репозитории GitHub, вы увидите следующее...

<!-- Grab Google CDN jQuery, with a protocol relative URL; fall back to local if offline -->
<script src="//ajax.googleapis.com/ajax/libs/jquery/X.X.X/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="local/jquery-X.X.X.min.js">\x3C/script>')</script>

Примечание. В фрагменте кода выше X.X.X следует заменить номер версии jQuery, который вы используете (например, 1.8.2).

Как это работает?

  • Сначала делается попытка захватить версию CDN (URL-адрес Google CDN используется выше, но, конечно, вы можете ссылаться на любой источник, который вам нравится).
  • Сразу же после этого мы проверяем глобальный объект jQuery.
  • Если jQuery не существует, очевидное предположение состоит в том, что нам не удалось получить код из CDN, так что мы тэг document.write a script, чтобы вместо этого получить копию из локального источника.

Ответ 2

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")">\x3C/script>')</script>