JQuery через Google CDN лучшие практики - PullRequest
7 голосов
/ 28 сентября 2010

Я загружаю jQuery через CDN Google, используя следующий код.

Мой главный вопрос - что произойдет, если пользователь заходит на мой сайт и еще не получил jQuery с предварительным кэшированием.Будет ли он скачать версию Google и мою собственную?Как работает параллелизм?

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
    if(typeof jQuery == 'undefined') {
        //<![CDATA[
        document.write("<script src='/includes/jquery-1.4.2.min.js' type='text/javascript'><\/script>");
        //]]>
    }
</script>

Спасибо.

1 Ответ

9 голосов
/ 28 сентября 2010

В вашем примере кода они загрузят версию Google , если , у них ее еще нет из-за другого сайта. Тогда если по какой-то причине не работает Google, они загрузят вашу версию, они не загрузят обе. Второй запрашивается только , если первый (от Google) не удается.

Проверка идет так:

  1. Есть ли у нас кешированная версия google?
    • Да - Хорошо, можно идти, используйте его.
    • Нет - Загрузите его с Google, используйте его.
  2. Определен ли jQuery (объект JavaScript)?
    • Да - нормально, он загрузился нормально, if() ложно, продолжайте.
    • Нет - О, хватит! Не удалось загрузить Google из кэша или из-за выборки, необходимо загрузить его из другого места
      • Загрузите его со своего сайта с помощью только что добавленного нового тега <script>.
...