J'ai un aspx qui contient jquery. En raison du retard dans le chargement de jquery, je suis confronté à des problèmes de style. Quelqu'un peut-il me dire comment charger jquery très rapidement ?
Réponses
Trop de publicités?LABjs est un script chargeur qui vous permet de charger les script dans un ordre de dépendance, de sorte que vous pouvez commencer par charger jQuery et ne pas bloquer le chargement d'autres script. Vous ne bloqueriez que les script qui dépendent de jQuery. Cela peut vous aider à augmenter la vitesse de chargement de la page.
LABjs (Loading And Blocking JavaScript) est un logiciel open-source (MIT ) soutenu par Getify Solutions. L'objectif principal de LABjs est d'être un chargeur JavaScript polyvalent et à la demande, capable de charger n'importe quelle ressource JavaScript, de n'importe quel endroit, dans n'importe quelle page, à à tout moment. Le chargement de vos scripts avec LABjs réduit le blocage de ressources ressources pendant le chargement de la page, ce qui est un moyen facile et efficace d'optimiser les performance de votre site.
Placez votre script après tous vos fichiers CSS(). Et vous pouvez le charger comme ceci :
<script id="script-batch" type="text/javascript">
(function(d){
var js = d.createElement('script'); js.async = true; js.defer = true;
js.src = "https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js";
d.getElementsByTagName('head')[0].appendChild(js);
}(document));
</script>
Tout d'abord, il chargera votre jQuery depuis le CDN de Google, qui est l'un des plus rapides. Ensuite, il est asynchrone entre les navigateurs et ne bloque pas le chargement d'autres éléments sur votre page.
J'ai lu aujourd'hui un billet de blog de Sam Saffron de Stackoverflow sur ce sujet. Je n'ai pas encore essayé les conseils de l'auteur donc je ne peux pas confirmer.
http://samsaffron.com/archive/2012/02/17/stop-paying-your-jquery-tax
le tl;dr ; est de pousser jquery au pied de la page et de définir une fonction $.ready dans l'en-tête qui capture tous les scripts qui ne pouvaient pas encore être exécutés parce que jquery n'a pas été chargé jusqu'à ce que la fonction $.ready réelle soit chargée.