Je suis confus sur où placer les fonctions JavaScript: p>
Quand devraient-ils être mis dans la tête En ligne dans le corps Et, quand après la balise HTML de fermeture? P>
merci p>
3 Réponses :
Les règles sont rapides et lâches à ce sujet, il n'y a pas de mauvais ou de mauvaise manière meilleure et moins meilleure. (bien après le En règle générale, JavaScript dans la tête code> du document peut bloquer le rendu de la page jusqu'à ce que le fichier soit chargé dans certains navigateurs * toux * Ie * toux *. Cela est dû à une limite de connexions simultanées. Donc, certaines personnes les mettent Si vous utilisez une bibliothèque ou que vous vérifiez que le DOM doit être chargé avant d'exécuter du code, il n'y a vraiment aucun problème de l'endroit où il est placé. Cependant, si vous ne faites pas cela, il est probablement préférable de le mettre à la fin. P> html> code> est em> mauvais) p>
html code> tag. Vous pouvez utiliser une bibliothèque pour charger asynchroneusement le JavaScript afin d'éviter ce blocage. P>
Je ne sais pas qui vous a baissé, mais j'ai suscité de l'annuler parce que je suis d'accord avec vous en général
merci@soniic ... avec une question aussi générique que pouvez-vous ne pas répondre généralement ...
Donc, pour résumer les 3 réponses jusqu'à présent: il est correct de mettre JavaScript à la tête et / à la tête et dans le corps et / corps. J'ai eu une partie de la mienne après / html. Yikes.
JavaScript peut toujours être placé en toute sécurité dans la tête pour rendre la fonctionnalité disponible sur la page entière. Notez que cela peut bloquer le chargement du reste du document, de sorte que si vous chargez de très grand ou javascript externe, vous voudrez peut-être les charger en ligne vers la fin du corps. P>
JavaScript placé en ligne sera disponible lorsqu'il sera exécuté. Cela vous permet de charger de manière conditionnelle JS lorsque des éléments de page sont chargés. P>
JavaScript doit toujours être placé dans le
html> p> p>.
Je suis d'accord, jamais vu (ni je n'ai pu recommander) après HTML. Aussi, comme indiqué, le blocage est la préoccupation. Ce que je vais souvent, c'est une référence de script dans la tête à Yepnope (un chargeur ASYNC JS et un bit TID TID (maintenant inclus avec modernizr )) et un minuscule bloc de JS en ligne à l'extrémité de la balise corporelle qui charge un fichier JS bootstrap. p>
Dans ce fichier, j'utilise une autre demande Yepnope pour charger d'autres actifs indispensables de manière asynchrone et lancer des méthodes d'initialisation. p>
J'ai aussi pris pour mettre mon code Google Analytics dans un bloc de Yepnope final, de sorte que c'est la dernière chose à charger, même après les bottes de l'application JS. P>
Dupliquer de Stackoverflow. com / questions / 196702 / ...
J'ai déjà vu cette question plusieurs fois, mais je ne me souviens jamais de voir "après
html> code>" comme option.
Je le place juste après la balise de fermeture