2010-06-28 7 views
3

J'ai appris des applications web dans l'ancien temps avant qu'il n'y ait des bibliothèques Javascript et des frameworks d'applications web. Quand je trouve le temps (ce qui pourrait ne pas arriver), cela ne me dérangerait pas de mettre à jour mon expérience avec ces méthodes plus modernes. Cependant, si j'ai écrit une page web avec l'un de ces paquets modernes, je ne voudrais pas claquer quelque chose qui est trop moderne pour la plupart des navigateurs de la base d'utilisateurs. Cela m'amène à un comportement que j'ai remarqué sur plusieurs sites Web avec des effets Javascript relativement lisses. Un site où il a été un problème est the Davis Vanguard blog, qui utilise Joomla 1.5. Un autre est MathOverflow. Le problème le plus grave est que souvent, lorsque je fais quelque chose de relativement simple, mon ordinateur portable se fige pendant quelques secondes, assez longtemps pour que l'interface utilisateur se sente icky plutôt que lisse. Sur le site de Davis Vanguard, tout ce qu'il faut pour le voir défile de haut en bas dans une des pages de discussion. Dans MathOverflow, cela se produit généralement lorsque je tape une réponse dans la case de réponse. Mais il est également possible, peut-être, de créer une pause de quelques secondes, même en faisant défiler une page de questions populaire. (Ceci est après le jsMath a rendu.)Javascript se bloque dans Firefox Ubuntu 8.04, ne sait pas quoi reprocher

Je cours Ubuntu 8.04 sur mon ordinateur portable et Firefox 3.0.19. Un indice sur le problème est que lorsque cela se produit, l'horloge du système se fige avec la session Firefox. Cela me fait me demander si jQuery ou Joomla ou quelque chose provoque une recherche DNS de temps en temps. Bien sûr, je pourrais améliorer mon propre système pour quelque chose de plus moderne, et peut-être que je devrais le faire. Mais cela pourrait ne pas être une bonne solution si j'écrivais un site web pour que d'autres personnes puissent l'utiliser. La question plus générale est, si je veux utiliser une bibliothèque Javascript spiffy mais je veux aussi éviter ce genre d'écueil --- retards d'interface utilisateur gratuits, erreurs de rendu, etc. --- que devez-vous faire? JQuery est-il meilleur que MooTools? S'agit-il d'utiliser la bibliothèque Javascript de la bonne façon, ou d'éviter certaines fonctions de bordures saignantes? Est-ce vraiment que Ubuntu 8.04 est derrière le temps? Est-ce parce que Chrome a un meilleur support Javascript que Firefox? Ou devrais-je blâmer DNS comme fourni par Comcast?

Répondre

3

Pour mettre un ergot à l'écart immédiatement: Joomla n'est pas une bibliothèque JavaScript . C'est un CMS basé sur PHP et n'est pas strictement lié à un framework JavaScript particulier. Sur un rapide coup d'oeil, je ne remarque pas de JavaScript en cours d'exécution que je fais défiler Davis blog de Vanguard.

problèmes DNS semblent extrêmement improbable: scripts sont souvent hébergés sur le même domaine que le site, et même quand ils ne sont pas , la mise en cache DNS ne éliminer tout problème après une seule charge page .

Firefox pour Linux est un port; il a problèmes de performance par rapport à l'édition de Windows. Un ordinateur sous-alimenté va juste aggraver le problème .

Il existe quelques benchmarks sur le Web comparant les performances des frameworks JS populaires. Je pense que la seule façon de savoir si votre propre ordinateur portable peut gérer certaines fonctionnalités d'une bibliothèque est de les tester.

+0

Je vois que je devrais probablement réviser la question. Mais si vous regardez la page principale de Davis Vanguard, c'est la mauvaise page. Essayez, par exemple, http://davisvanguard.org/index.php?option=com_content&view=article&id=3468&catid=50&Itemid=83. Et l'ordinateur portable n'est pas tout ce sous-alimenté AFAIK, c'est un Dell XPS M1530. Il est aussi puissant que mon bureau Ubuntu 7.04 au travail, qui a un schéma de ralentissements entièrement différent. –

+0

Aussi, si le DNS est peu probable, je ne vous croyez pas, mais quel type de ralentissement du navigateur interrompt le multitâche? (Encore une fois, il s'agit d'un Dell XPS à partir de 2008, et je ne parle pas de quoi que ce soit qui cause des problèmes de disque.) –

+0

Selon la version de Firefox, XHR synchrone peut bloquer l'ensemble de l'interface graphique de Firefox jusqu'à la fin de la requête. Je vois cela se produire sur le premier ou le deuxième lien de davisvanguard.org. Avez-vous essayé de construire la dernière version de Firefox à partir de la source? Mozilla corrige constamment les fuites de mémoire dans l'histoire de Firefox. De plus, Firefox a un nouveau moteur JavaScript ("Tracemonkey") à partir de la version 3.1; ça fait un peu accélérer. –