Le principal problème avec votre site est le fait que vous essayez de charger tout en une seule fois au chargement initial de la page. Le rapport sur la taille du document de la barre d'outils du développeur Web affiche un total de 1,1 Mo de contenu, soit près de 750 Ko d'images et 385 Ko de scripts. Chargement de cette quantité de contenu en une seule fois est vraiment pas recommandé, en particulier pour les vitesses de connexion plus lentes. La solution évidente serait de tout cacher et de ne l'afficher que lorsque les scripts sont prêts, mais c'est une très mauvaise solution - vos visiteurs regarderont plus de 10 secondes ou plus d'une page vierge. Ce que vous devriez faire est de restructurer le site - repensez votre architecture pour cela. Les sites Web ne sont pas destinés à être téléchargés d'un seul coup - il y a trop de données et l'une des raisons pour lesquelles les utilisateurs n'aiment pas les sites Flash, car Flash doit télécharger tous les éléments en une seule fois. temps d'attente.
Vous devez soit découper les pages en documents HTML normaux, qui seront chargés traditionnellement, soit utiliser ajax pour charger le contenu de façon séquentielle. Demandez à votre script de réorganiser intelligemment le chargement des contenus - le contenu de la page d'accueil en premier, puis lorsque l'utilisateur choisit où il va, le site derrière son dos charge les ressources pour ces pages. Les images sont le gros problème ici - vous avez .7mb d'entre eux, et le chargement de tous bloque le chargement du site, y compris les scripts, par un très long laps de temps.
Ce ne sont pas une tâche facile par tous les moyens, mais c'est la meilleure méthode pour résoudre le problème. Voici quelques solutions plus immédiates à vos problèmes: @matt b - activer la compression gzip, combiner tous vos scripts et feuilles de style en un seul fichier, etc. Vous devriez également envisager d'utiliser des sprites CSS pour vos images afin de réduire le nombre de requêtes HTTP. Il y a un grand nombre de plugins jQuery qui sont les principaux candidats pour la consolidation, et vous chargez également jQuery deux fois - en ajoutant près de 100 ko à la quantité de choses que vous devez charger.
ok J'ai utilisé Yslow, réduit mon Javascript et mis tous les fichiers .js externes dans un seul fichier. -> le score de performance global est passé de 60 à 73. Mais le FOUC (mentionné ci-dessous) est toujours là ... – algro
En effet, j'ai implémenté la barre de progression/plugin pour charger la page, avant de l'afficher. Y at-il quelque chose comme un exemple minimal, comment je pourrais mettre en œuvre le Javascript asynchrone? – algro