2010-02-14 7 views
1

Je viens de créer une galerie d'images au http://nu-lightbox.appspot.com/, un moteur d'application google. J'ai testé ce site avec Firefox 3.5 sous Windows XP et Ubuntu Linux. Si vous ouvrez le site Web et cliquez sur le bouton bleu circulaire fléché, vous remarquerez à quel point l'animation est lissée (pas lisse).Appel à tous les experts javascript/jquery - Comment Firefox traite-t-il javascript?

La chose étrange est quand j'ouvre la page HTML dans ma boîte locale, pas par le moteur de google app, l'animation est très très lisse. D'après ce que je comprends, un navigateur va mettre en cache/télécharger une page HTML, son javascript et toute feuille de style associée à la boîte locale de l'utilisateur quand ils consultent un site Web. Basé sur cette notion, il ne devrait pas y avoir de traitement côté serveur pour ma galerie d'images. Tout le traitement devrait être fait du côté client/navigateur de l'utilisateur localement dans leur boîte. Donc, je ne comprends pas vraiment pourquoi l'animation se déroule correctement lorsque j'exécute la page HTML en local, mais il y a tellement de décalage quand je la vois à travers google app engine.

Cheers.

+0

J'ai juste effacé mon cache hors ligne firefox. Nous pouvons effacer notre cache hors ligne du menu Outils de Firefox. Allez simplement dans «Outils> Options> Onglet Avancé> Onglet Réseau» et cliquez sur le bouton «Effacer maintenant» de la section de stockage hors ligne. Maintenant, l'animation photo est aussi lisse que lorsque je cours la page Web à partir de ma boîte locale. Est-ce une solution? Ou est-ce juste un indice pour le problème réel? Quelqu'un a de l'expérience avec ce – zfranciscus

+0

Oui, voir le modifier à ma question ... mauvaises versions antérieures peuvent encore être en cours d'exécution via JavaScript. Esp. avec multi-onglet. – Hogan

+0

Pourquoi étiez-vous étiqueté google-app-engine? –

Répondre

0

Vous avez raison si tout est mis en cache sur le client alors ils devraient fonctionner à la même vitesse.

Je voudrais utiliser Wireshark ou Fiddler pour vérifier le trafic HTTP pour vous assurer que vous savez exactement ce qui se passe.

+0

Hey mythz, merci pour la suggestion. J'ai voulu jouer avec wireshark. Je ne suis pas vraiment compétent avec Wireshark.Vous serez en mesure de suggérer un filtre wirehark simple que je peux utiliser. À la votre – zfranciscus

0

Selon les meilleures pratiques, placez tout le code JavaScript à la fin de la page et toutes les feuilles de style CSS dans l'élément HTML HEAD.

Je suppose que vous verrez des performances de page plus cohérentes (et plus rapides).

ajouté à modifier

Aussi, fermez tous les onglets de votre navigateur et redémarrez-le. Vous ne pouvez rien dire sur les performances si vous avez un buggy JavaScript qui s'exécute dans un autre onglet. (Chrome est meilleur avec ce problème.)