2010-09-03 13 views
9

Zajmuję się tworzeniem dynamicznej strony internetowej za pomocą jQuery i znalazłem kilka wtyczek jQuery, aby być bardzo pomocne w tym czasie.Czy można bezpiecznie połączyć kilka plików JavaScript w jeden?

Oczywiście dla każdej wtyczki, którą dodaję, jest inny skrypt do załadowania po załadowaniu strony. Wiem, że aby strony były szybko ładowane, mniejsze i/lub mniejsze zasoby są lepsze.

Czy można bezpiecznie scalić wszystkie pliki wtyczek jQuery w jeden? Czy muszę coś sprawdzić zanim to zrobię, czy może to być zrobione szybko i nieczysto przez skrypt po stronie serwera?

Odpowiedz

4

Tak, jest. Tak właśnie stanie się w Twojej przeglądarce.

Można również użyć narzędzia do minimalizacji, takiego jak Google Closure Compiler lub YUI Compressor, aby dodatkowo zmniejszyć rozmiar kodu JavaScript.

+5

Pamiętaj tylko, aby zachować kolejność plików – Martin

0

Tak, ponieważ przeglądarka pobiera i uruchamia każdy plik, w kolejności, w jakiej są zawarte, a łączenie wielu skryptów w jednym pliku jest takie samo, przeglądarka pobierze ten plik i wykona go.

7

Tak, można je bezpiecznie scalić w jeden.

W większości przypadków strona powinna ładować się szybciej, ale w niektórych sytuacjach może to spowolnić działanie. Na przykład:

  • Jeśli twoja strona jest przeznaczona dla urządzeń mobilnych, takich jak iPhone, bardzo duży plik JavaScript może nie zostać zbuforowany, podczas gdy wiele małych plików JavaScript będzie. Dokładny rozmiar zależy od telefonu i wersji (a z mojego doświadczenia wynika, że ​​urządzenia BlackBerry są szczególnie ograniczone) patrz na przykład Safari Cache size for iPhone 3.0
  • Jeśli Twoja witryna jest przeznaczona dla przeglądarek komputerowych, łączącą wszystkie pliki JavaScript w jednym pliku, gdy nie potrzebujesz natychmiast może spowodować, że pierwsza wizyta użytkownika na stronie będzie bardzo powolna. Jeśli podzielisz Javascript na wiele plików i uwzględnisz je tylko w razie potrzeby, użytkownik nie otrzyma masowego początkowego pobrania, więc jest mniej prawdopodobne, że pierwsze wrażenie na Twojej stronie będzie wolne.
Powiązane problemy