Retardement pour style.display

Résolu
mageonyme Messages postés 121 Date d'inscription samedi 10 janvier 2004 Statut Membre Dernière intervention 1 décembre 2009 - 14 juin 2005 à 10:28
Phil_Free Messages postés 275 Date d'inscription samedi 4 juin 2005 Statut Membre Dernière intervention 28 avril 2006 - 15 juin 2005 à 11:15
salut,
voilà mon pb : je voudrais que la partie "else{ }" de cette fonction ne fonctionne qu'après un certain temps genre 2 secondes (en gros c'est pôur éviter que le div s'éfface immédiatement).

<html><head>
<script LANGUAGE="Javascript">
function showhide(vari) {
if (vari.style.display=="none") { vari.style.display=""; }
else { vari.style.display="none"; }
}
</script>
</head>
passe la souris ici

contenu contenu

</html>

par ailleurs, j'ai essayé avec settimout mais j'ai pas réussi à l'intégrer...
bref votre aide me sera très utile
merci d'avance...

4 réponses

Phil_Free Messages postés 275 Date d'inscription samedi 4 juin 2005 Statut Membre Dernière intervention 28 avril 2006 11
14 juin 2005 à 21:34
Tu peux faire une boucle vide après ton else.



Du style:



...

else {
for (i = 0 ; i < 1000000; ++i) {
i++
}


vari.style.display="none";

}
3
mageonyme Messages postés 121 Date d'inscription samedi 10 janvier 2004 Statut Membre Dernière intervention 1 décembre 2009
14 juin 2005 à 11:03
pour résoudre le problème j'ai fait comme ça :

<html><head>
<script LANGUAGE="Javascript">
function showhide(vari) {
if (vari.style.display=="none") { vari.style.display=""; }
else { vari.style.display="none"; }
}
</script>
</head>
setTimeout('showhide(tab)',1000)" onMouseOver="showhide(tab)">
passe la souris ici

contenu contenu

</html>

ça rend la fonction un peu plus chiante à utiliser mais ça marche...
si vous avez d'autres solutions, elles sont les bienvenues...
merci...
0
mageonyme Messages postés 121 Date d'inscription samedi 10 janvier 2004 Statut Membre Dernière intervention 1 décembre 2009
15 juin 2005 à 09:44
c vrai, c une idée... ça m'a l'air un peu hazardeux mais cela a le mérite d'exister...
merci en tout cas...
0
Phil_Free Messages postés 275 Date d'inscription samedi 4 juin 2005 Statut Membre Dernière intervention 28 avril 2006 11
15 juin 2005 à 11:15
Tu peux aussi créer une fonction bidon et utiliser SetTimeout.



Du style:



...


else {
SetTimeout ( "fonctionbidon()" , 1000 ) ;


vari.style.display="none";
}




C'est peut-être moins hasardeux...
0
Rejoignez-nous