33 votes

Est-ce que $ (document) est déjà nécessaire si je mets tout mon JavaScript en bas de la page?

Double Possible:
jquery - Est de $(document).prêt-elle nécessaire?

Mettre le JS juste au-dessus de l' </body> balise améliore la perception du temps de chargement car le navigateur n'a pas à les lire et les analyser à travers tout le JS avant de pouvoir commencer le rendu de la page.

Mais il a un autre avantage, n'est-ce pas? Nous n'avons pas besoin de mettre le JS en $(document).ready(function() { ... }) car tous les éléments sont déjà au-dessus de la JS et sont donc prêts pour la manipulation.

  1. Est - $(document).ready nécessaires pour assurer le DOM est entièrement chargé et prêt pour la manipulation?

  2. Quelle est la différence entre les temps d'exécution? Serait une méthode de feu plus vite que les autres?

  3. Pourrions-nous notre lien externe, fichiers JS (<script src="..." />) au bas de la page, trop, ou besoin d'être dans l'en-tête?

20voto

ThatGuy Points 6454

Ceci AFIN de répondre à dit PAS:

stackoveflow question

$(document).prêt est l'assurance complète DOM est disponible à la fois la fonction est appelée. Toutes les fonctions et les événements non pas selon les DOM n'ont pas besoin d'être mis dans le prêt de l'événement.

Aussi, pour améliorer le rendu de la page à la vitesse de chargement des fichiers javascript de façon dynamique dans la non-blocage de la mode: http://berklee.github.com/nbl/ ou https://github.com/rgrove/lazyload/

Cette technique fonctionne à peu près comme ceci:

 var script = document.createElement("script");
 script.type = "text/javascript";
 script.src = "file1.js";
 document.getElementsByTagName("head")[0].appendChild(script);

Ce nouvel élément charge le fichier source file1.js. Le fichier commence à télécharger dès que l'élément est ajouté à la page. La chose importante à propos de cette technique est que le fichier est téléchargé et exécuté sans bloquer les autres page des processus, indépendamment de l'endroit où le téléchargement est lancé. Vous pouvez même placer ce code dans l'en-tête d'un document sans affecter le reste de la page (à côté de l'une connexion HTTP est utilisé pour télécharger le fichier).

ce livre: "Haute Performance JavaScript" par Nickolas Zakas a beaucoup d'informations intéressantes à propos de JavaScript performace d'optimisation.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X