Откуда вы включаете библиотеку jQuery? Google JSAPI? CDN? - PullRequest
242 голосов
/ 13 февраля 2009

Есть несколько способов включить пользовательский интерфейс jQuery и jQuery, и мне интересно, что люди используют?

  • Google JSAPI
  • Сайт jQuery
  • ваш собственный сайт / сервер
  • другой CDN

Недавно я использовал Google JSAPI, но обнаружил, что для настройки SSL-соединения требуется много времени или даже только для разрешения google.com. Я использовал следующее для Google:

<script src="https://www.google.com/jsapi"></script>
<script>
google.load('jquery', '1.3.1');
</script>

Мне нравится идея использовать Google, чтобы он кэшировался при посещении других сайтов и чтобы сэкономить трафик с нашего сервера, но если он продолжает оставаться медленной частью сайта, я могу изменить включение.

Что вы используете? Были ли у вас какие-либо проблемы?

Редактировать: Только что посетили сайт jQuery, и они используют следующий метод:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>

Edit2: Вот как я без проблем включал jQuery за последний год:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>

Разница заключается в удалении http:. Удаляя это, вам не нужно беспокоиться о переключении между http и https.

Ответы [ 16 ]

3 голосов
/ 13 февраля 2009

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

2 голосов
/ 29 марта 2011

Вот некоторый полезный ресурс, надеюсь, поможет вам выбрать свой CDN. MS недавно добавила новый домен для доставки библиотек через CDN.

Старый формат: http://ajax.microsoft.com/ajax/jQuery/jquery-1.5.1.js Новый формат: http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.5.1.js

Это не должно отправлять все куки для microsoft.com. http://www.asp.net/ajaxlibrary/cdn.ashx#Using_jQuery_from_the_CDN_11

Вот немного статистики о наиболее популярных технологиях, используемых в сети во всех технологиях. http://trends.builtwith.com/

Надежда поможет вам выбрать.

2 голосов
/ 13 февраля 2009

Я просто включаю последнюю версию с сайта jQuery: http://code.jquery.com/jquery-latest.pack.js Это соответствует моим потребностям, и мне никогда не придется беспокоиться об обновлении.

РЕДАКТИРОВАТЬ: для крупных веб-приложений, безусловно, контролировать его; скачай и подай сам. Но для моего личного сайта мне было все равно. Вещи волшебным образом не исчезают, они обычно устаревают первыми. Я в курсе всего этого, чтобы знать, что изменить в будущих выпусках.

1 голос
/ 16 февраля 2010

В голове:

  (function() {
    var jsapi = document.createElement('script'); jsapi.type = 'text/javascript'; jsapi.async = true;
    jsapi.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'www.google.com/jsapi?key=YOUR KEY';
    (document.getElementsByTagName('head')[0] || document.getElementsByTagName('head')[0]).appendChild(jsapi);
  })();

Конец тела:

<script type="text/javascript">
google.load("jquery", "version");
</script>
1 голос
/ 14 февраля 2009

Если я отвечаю за «живой» сайт, мне лучше знать обо всем, что происходит и в мой сайт. По этой причине я сам размещаю версию jquery-min либо на том же сервере, либо на статическом / внешнем сервере, но в любом случае могу найти место, где только я (или моя программа / прокси-сервер) может обновить библиотеку после проверки / тестирования каждого изменения

0 голосов
/ 21 ноября 2017

Я размещаю его вместе с другими моими js-файлами на своем собственном сервере, и, в этот момент, объединяю и минимизирую их (с помощью django-compresser, здесь, но не в этом суть), чтобы они служили только одним файлом js все, что нужно сайту, вложено в него. В любом случае вам нужно будет обслуживать свои собственные файлы js, поэтому я не вижу смысла не добавлять туда дополнительные байты jquery - еще несколько килобайт гораздо дешевле для передачи, чем больше запросов. Вы ни от кого не зависите, и как только ваши минимизированные js будут кэшированы, вы тоже будете очень быстры.

При первой загрузке решение на основе CDN может победить, потому что вы должны загрузить дополнительные килобайты jquery со своего собственного сервера (но без дополнительного запроса). Я сомневаюсь, что разница заметна, хотя. И затем, при первой загрузке с очищенным кешем, ваше собственное размещенное решение, вероятно, всегда будет намного быстрее из-за необходимости большего количества запросов (и поисков DNS) для извлечения jquery CDN.

Интересно, как этот момент почти никогда не упоминается, и как CDN, кажется, захватывают мир :)

...