2009-03-18 4 views

Antwort

3

Die beste Möglichkeit, JavaScript in Ihre Website einzubinden, besteht darin, so wenige Dateien wie möglich zu erstellen * at the end of the page *, nachdem alle Markups und anderen Assets geladen wurden. Dies hat auch den zusätzlichen Vorteil, ein Entwicklungsmodell "progressive enhancement" zu fördern.

* Yahoo verbringt viel Geld damit, dies zu erforschen und hat engagierte Vollzeitmitarbeiter (einschließlich der brillianten Steve Souders), die ihre Ergebnisse veröffentlichen online und in book form.

+0

Beachten Sie, dass Internet Explorer weiterhin versucht, sie vor dem Rest der Seite zu laden, was zu einigen ziemlich schwerwiegenden Fehlern führt. Damit dies ordnungsgemäß funktioniert, müssen Sie ein Attribut "Defer" in das Skript-Tag einfügen. – DNS

+0

@DNS Ich bin mir nicht sicher, ob das stimmt. IE lädt Ressourcen in der Reihenfolge, in der sie im Markup referenziert werden. Wenn Skripts zuletzt aufgelistet sind, werden sie zuletzt geladen. Defer ist tatsächlich weniger zuverlässig, da es nicht immer verzögert, bis die Seite vollständig geladen ist. –

+0

@Rex M: IE führt die Ressourcen nicht in der Reihenfolge aus, in der sie im DOM referenziert werden, wenn sie mit der Technik, nach der der Fragesteller fragt, zum DOM hinzugefügt werden. Siehe meine Antwort für Deets. –

0

es in einem erwähnt wurde von Die Podcasts, aber wenn Sie das Javascript in einer separaten Domäne oder sogar einer Subdomain hosten, kann der Browser mehr Verbindungen öffnen und sowohl die js als auch den Rest der Seite gleichzeitig herunterladen. Aus diesem Grund entscheiden sich viele Nutzer für die Verknüpfung mit der jQuery-Instanz von Google und nicht mit ihrer eigenen. Dieses Beispiel hat auch Cachine Vorteile, aber das Kernprinzip gilt.

+0

Sie können dann jedoch auf domänenübergreifende Sicherheitsprobleme stoßen. – Powerlord

+0

@RBemrose: Denken Sie daran, diese sind