Atorina
Messages postés22Date d'inscriptionlundi 2 août 2004StatutMembreDernière intervention 5 janvier 2005
-
2 août 2004 à 09:25
Atorina
Messages postés22Date d'inscriptionlundi 2 août 2004StatutMembreDernière intervention 5 janvier 2005
-
2 août 2004 à 16:06
Bonjour,
J'ai fait un code qui, lorsqu'on fait un clic droit, affiche un menu personnalisé. J'ai voulu faire un setTimeout pour que le menu se ferme au bout d'un certain temps. Seulement si je ferme le menu avant que le temps expire et que je rouvre le menu ensuite, la temporisation marche encore sur le nouveau menu. Ce qui fait que desfois lorsque j'ouvre un menu, il se ferme tout de suite après. J'ai tenté de faire un clearTimeout mais cela ne marche pas. Ma variable nrml qui recupere le resultat de setTimeout reste toujours undefined.
var nrml; // contient le resultat du setTimeout()
//balise div qui contient ensuite ce qui va être afficher dans le menu
document.writeln('
');
document.writeln('
');
// Masquage du menu lorsqu'on clic gauche ou droit sur la page
function masque_menu(nrml) {
var liste = document.getElementsByTagName("div");
for (i=0;i<liste.length;i++)
{
if (liste[i].name=="tata")
{
liste[i].style.visibility="hidden";
}
}
if (nrml)
{window.alert(nrml);
window.clearTimeOut(nrml);}
else
window.alert(nrml);
}
// Remise a l'etat normal des intitules (position 'off')
function normal() {
var nrml;
if ( event.srcElement.className == "intitules" ) {
event.srcElement.style.backgroundColor = "";
event.srcElement.style.color = "black";
nrml=window.setTimeout("masque_menu()",2000);
}
return nrml;
}
Dans masque_menu, j'ia essayer de faire :
if (nrml != undefined)
{window.alert(nrml);
window.clearTimeOut(nrml);}
Atorina
Messages postés22Date d'inscriptionlundi 2 août 2004StatutMembreDernière intervention 5 janvier 20051 2 août 2004 à 11:26
Merci,
le alert() affiche maintenant autre chose que undefined mais ma modification à générer une erreur . il me dit qu'il y a une erreur au niveau du :
window.clearTimeOut(nrml);
"Cet objet ne gère pas cette proprièté ou cette méthode"
Dans mon menu il y a un sous menu qui permet de fermer le menu. Il appel en fait masque_menu. Lorsque je fais fermé, cela génère cette erreur. Mais lorsque j'attend la temporisation, il n'y a pas d'erreur.
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 2 août 2004 à 12:55
clearTimeout
avec o minuscule ( je sais c'est pénible
cette différence majuscules/minuscules ... )
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_bultez
Messages postés13615Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 201330 2 août 2004 à 15:48
comme on n'a pas tous les éléments
ça va être plus difficile de répondre.
une remarque pourquoi nrml en paramètre,
par exemple menu(nrml), alors que défini en
global ? ça doit déjà perturber pas mal ...
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]