AtriSimone
@AtriSimone
Осваиваю Front-end

Как лучше подключать jQuery?

Добрый день!
Такая ситуация: я загружаю jQuery через bower и при сборке верстки библиотека пишется в один файл с моими скриптами и минифицируется. Получается что jQuery вверху файла, а мои скрипты под библиотекой и к страничке я подключаю 1 main.js файл со всем.
Хорошо так делать или плохо?
Может лучше отдельно в хедере подключать jQuery, а ниже свои скрипты?
Буду рад развернутому ответу, т.е. не только как лучше но и почему.
Спасибо.
  • Вопрос задан
  • 5835 просмотров
Решения вопроса 1
b0nn1e
@b0nn1e
Alcohol & Ruby on Rails
Подключать отдельно JQuery есть смысле если подключать его с CDN google, ибо там ответ будет скорее всего быстрее чем на вашем хостинге и намного более вероятнее что этот JQ файл уже есть в кэше у пользователя. Ну и в идеале если не подключилось то загружать его с локального хранилища. Это будет полезно при разработке если нет доступа к интернету или типа того.
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="/assets/js/vendor/jquery.min.js"><\/script>')</script>

Пример взят с bootstrap.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
rpsv
@rpsv
делай либо хорошо, либо никак
Как по мне все библиотеки подключать в одном файле (всяко он кешируется), а скрипты уже прописывать непосредственно на страницах.
---
Если все писать в один файл, это будет очень дико большая портянка, в которой будет трудно разобраться и что либо найти.
Ответ написан
@1mastodon1
все верно, так и нужно, из плюсов:
1) минимум http запросов
2) скрипты уже загружаются после того, как DOM построен, если этот файл подключается перед
Ответ написан
Комментировать
blackrid
@blackrid
Стараюсь узнать всё понемногу
Посоветую jquery брать с гугловских серверов. А для синхронной загрузки js-файлов в нужном порядке (иногда бывает важно), использовать Head.js headjs.com

Пример:
<head>
    <script src="/js/head.js" type="text/javascript" />
</head>

head.load(
        'https://code.jquery.com/jquery-2.2.2.min.js',
        '/js/script1.js',
        '/js/script2.js'
    );
    head.ready( function() {
        // скрипты загружены, можно работать
    } );
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы