Question

J'ai un div pour montrer un message, je veux que le message apparaisse pendant quelques secondes et qu'il disparaisse ensuite jusqu'à ce qu'il disparaisse.

Je viens de définir une div normale et de la masquer lorsque la page se charge avec $ ('# mydiv'). hide ();

J'ai un bouton pour afficher la div avec l'effet souhaité. Pour cela, j'utilise:

  $('#myDiv').fadeIn('fast').effect("highlight", { color: "green", mode:"hide" }, 5000);

Cela fonctionne parfaitement sur Firefox et Chrome, mais sur IE (essayé sur les versions 6, 7 et 8), il ne fonctionne que la première fois, après quoi le message n'apparaîtra pas.

S'il n'y a aucun moyen de réaliser cela dans IE, j'aimerais savoir comment puis-je faire un fadeOut ou quelque chose du genre APRÈS la fin de la surbrillance?

Merci de votre aide

Était-ce utile?

La solution

Il semble que ce ticket jQuery soit lié à votre problème.

La solution que j'ai trouvée consiste à ajouter

$('#myDiv').removeAttr('style');

avant

$('#myDiv').fadeIn('fast')
           .effect("highlight", { color: "green", mode:"hide" }, 5000);

pour effacer le problème de filtre IE.

Autres conseils

De manière générale, je ne chaîne pas les effets. Vous voudrez probablement utiliser un rappel à la place:

$('#myDiv').fadeIn('fast', function() {
  $(this).effect("highlight", { color: "green", mode:"hide" }, 5000);
});
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top