Problème javascript entrainant des lenteurs avec IE 7 [Résolu]

Signaler
Messages postés
2
Date d'inscription
mercredi 28 mai 2008
Statut
Membre
Dernière intervention
3 juin 2010
-
Messages postés
2
Date d'inscription
mercredi 28 mai 2008
Statut
Membre
Dernière intervention
3 juin 2010
-
Bonjour a tous,

Je travaille actuellement sur la mise en place de calendrier pour ma boite et je suis confronté à un problème de lenteur exponentielle avec IE (6,7,8) . Sur FF le problème existe mais se ressent beaucoup moins.

Le problème est le suivant :
les 4 calendriers de la page (basé sur celui ci http://www.meanfreepath.com/javascript_calendar/livedemo.html V106_en LINUX) sont chargés avec un onload.
Après des submit à répétition le temps de chargement de la page augmente mais uniquement pour l'utilisateur (le temps serveur est le même a chaque fois, moins de 2 secondes) de l'ordre de 2 secondes pour le premier submit à plus de 20 secondes arrivée au 25ème. Après plusieurs test sans/avec le calendrier le problème vient bien du calendrier.

Les modifications que j'ai faites dans le code sont essentiellement :
- Mise en fonction (début du script dans une fonction init)
- Ajout dans le onclick de sélection de la date
- Ajout d'un bouton pour la date du jour (a la place du bouton reset)
- Multilangue

Toutes les modifications sont faite en POO.

Quelqu'un à t-il rencontré un problème similaire ?

Merci.

2 réponses

Messages postés
2
Date d'inscription
mercredi 28 mai 2008
Statut
Membre
Dernière intervention
3 juin 2010

Bonjour,

J'ai réussi à corriger le problème en benchmarkant la classe javascript.

Les lenteurs venait de la fonction createCalCells. Elle recréer à chaque fois le tableaux des numéro du jour. J'ai simplement modifié la fonction pour que la première fois le tableaux soit créé (createElement) mais les autres fois seul les valeurs du tableaux sont mis à jour.

Apparemment IE 7 n'aime pas trop la création de DOM. couplé à un problème de cache ou tout les DOMS sont sauvegardés et non supprimés après submit.
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
14
Bonjour,
difficile de dire quoique ce soit si ce n'est peut être que la 1er fois tu charges 4 calendriers, la 2ieme 8, la 3ieme 12, et ainsi de suite...

;O)