récemment, j'ai rencontré un problème avec IE. J'ai une fonctioncomment définir le style par javascript dans IE immédiatement
function() {
ShowProgress();
DoSomeWork();
HideProgress();
}
où ShowProgress et HideProgress manipuler juste le style CSS 'display' en utilisant la méthode css() jQuery.
En FF tout est OK, et en même temps je change la propriété d'affichage à bloquer, la barre de progression apparaît. Mais pas dans IE. Dans IE, le style est appliqué, une fois que je quitte la fonction. Ce qui signifie qu'il n'est jamais montré, parce qu'à la fin de la fonction, je le cache simplement. (Si je supprime la ligne HideProgress, la barre de progression apparaît juste après l'exécution de la fonction (plus précisément, immédiatement lorsque les fonctions d'appel se terminent - et donc rien d'autre ne se passe dans IE)).
Quelqu'un at-il rencontré ce problème? Existe-t-il un moyen d'amener IE à appliquer le style immédiatement?
J'ai préparé une solution, mais il me faudrait du temps pour l'implémenter. Ma méthode DoSomeWork() fait quelques appels AJAX, et ceux-ci sont maintenant synchrones. Je suppose que les rendre asynchrones permettra de résoudre le problème, mais je dois redéfinir un peu le code, donc trouver une solution juste pour appliquer le style immédiatement serait beaucoup plus simple.
Merci rezna
ouais je le pensais. jouer avec setTimeout est assez compliqué et je pense que ça va poser des problèmes encore plus graves. Donc je vais refaire le code :) – rezna