Avouons-le, jQuery/jQuery ui est une lourde télécharger.
Google recommande différés chargement des JavaScript pour accélérer la vitesse initiale de rendu. Ma page utilise jQuery pour mettre en place certains onglets qui sont placés au bas de la page (la plupart du temps hors de la vue initiale) et j'aimerais reporter jQuery jusqu'à APRÈS que la page a rendu.
Google report de code ajoute une balise pour les DOM après le chargement de la page, en l'accrochant dans le corps à l'événement onLoad:
<script type="text/javascript">
// Add a script element as a child of the body
function downloadJSAtOnload() {
var element = document.createElement("script");
element.src = "deferredfunctions.js";
document.body.appendChild(element);
}
// Check for browser support of event handling capability
if (window.addEventListener)
window.addEventListener("load", downloadJSAtOnload, false);
else if (window.attachEvent)
window.attachEvent("onload", downloadJSAtOnload);
else window.onload = downloadJSAtOnload;
</script>
Je tiens à différer le chargement de jQuery de cette façon, mais quand je l'ai essayé mon code jQuery échoué à trouver jQuery (pas tout à fait inattendu de ma part):
$(document).ready(function() {
$("#tabs").tabs();
});
Il me semble que j'ai besoin de trouver un moyen de différer l'exécution de mon code jQuery jusqu'à ce que jQuery est chargé. Comment puis-je détecter que le tag a la fin du chargement et de l'analyse?
En corollaire, il apparaît que le chargement asynchrone peut également contenir une réponse.
Toutes les pensées?