2010-09-03 2 views
9

Я разрабатываю динамический веб-сайт с использованием jQuery, и я нашел несколько плагинов jQuery, чтобы быть очень полезным при этом.Можно ли объединить несколько файлов JavaScript в один?

Конечно, для каждого добавляемого плагина есть другой скрипт для загрузки при загрузке страницы. Я знаю, что для быстрой загрузки страниц лучше использовать меньше и/или меньше ресурсов.

Можно ли просто слить все эти файлы плагина jQuery в один? Нужно ли мне что-то проверять до того, как я это сделаю, или это может быть сделано быстро и грязно с помощью скрипта на стороне сервера?

ответ

4

Да, это так. Так или иначе, это произойдет в вашем браузере.

Вы также можете использовать инструмент миниатюризации, такой как Google Closure Compiler или YUI Compressor, чтобы еще больше уменьшить размер вашего кода JavaScript.

+5

Не забудьте сохранить порядок файлов – Martin

0

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

7

Да, это безопасно объединить их в один.

И в большинстве случаев страница должна загружаться быстрее в результате, но есть ситуации, когда это может замедлить работу. Например:

  • Если ваш сайт предназначен для мобильных устройств, таких как iPhone, очень большой Javascript-файл может не быть кешированным, тогда как несколько небольших файлов Javascript будут. Точный размер зависит от телефона и версии (и, по моему опыту, устройства BlackBerry особенно ограничены) см., Например, Safari Cache size for iPhone 3.0
  • Если ваш сайт предназначен для настольных браузеров, объединив все ваши Javascript в один файл, когда вам не понадобятся он сразу же может сделать ваш первый визит пользователя на сайт очень медленным. Если вы разделите свой Javascript на несколько файлов и включите их только в случае необходимости, пользователь не пострадает от массивной начальной загрузки, и поэтому вероятность того, что их первое впечатление о вашем сайте будет медленнее, менее вероятно.
Смежные вопросы