Une des raisons
qui fait que les fonctions JavaScript appelées sur apparition d'événements
apparaissent de préférence en tête d'une page est que
le document pouvant prendre plusieurs secondes (quelquefois beaucoup plus)
avant d'être chargé en totalité, l'utilisateur (client)
va peut-être interagir avec le document incomplètement chargé.
Dans ce cas, il faut absolument que l'événement provoqué
par l'utilisateur soit pris en compte dès qu'il se produit.
Si la fonction
gérant cet événement n'est pas encore chargée, on
peux imaginer trois conséquences aussi fâcheuses les unes que les
autres :
Afin que les gestionnaires
d'événements soient chargés avant même que l'utilisateur
puisse déclencher leur activation, il faut qu'ils aient été
chargés et analysés avant que le contenu visible du document (entre
<body> et </body>)
commence à apparaître à l'écran. Ils doivent donc
bien prendre leur place entre <head>
et </head>.