Problème tout bete de menu deroulant. comment le fermer ? [Résolu]

Signaler
Messages postés
54
Date d'inscription
mercredi 9 juin 2004
Statut
Membre
Dernière intervention
19 août 2009
-
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011
-
Salut, j'autilise un menu deroulant plutot basique (un rectan gle, on passe dessus ça ouvre le menu ( par un rollov er) et on enleve la souris du menu ça se ferme (avec un rollout). seulement, quand on passe rapidement, ça garde le menu ouvert :/ auriez vous un moyen "simple" de le faire fermer ? j'ai essayer en metant un cadre autours, invisible avex un gotoandstop, mais je trouve pas ça trés "propre" comme faon de faire


PS : je pensais avoir laissé ce message hier. mais je le trouve plus, donc désolé si il y a double post

11 réponses

Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

Exemple :
var isOpen = false;
var isOver = false;

monMenu.onRollOver = function(){
    isOver = true;
}

monMenu.onRollOut = function(){
    isOver = false;
}

this.onEnterFrame = function(){
    // Si on survol le menu et qu'il n'est pas ouvert
    if(isOver && !isOpen){
        // Code pour ouvrir le menu
        isOpen = true;
    } 
    // Si on ne survol pas le menu et qu'il est ouvert
    else if(!isOver && isOpen){
        // Code pour fermer le menu
        isOpen = false;
    }
}



A+

-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

Hello,

Tu peux très bien partir soit sur un onEnterFrame soit sur un setInterval qui vérifie en permanence par exemple si la variable "over" est egal à 1...

ainsi si on passe la souris sur le menu pour ouvrir le sous-menu, la var "over" = 1... menu est ouvert donc on fait rien.

Par contre lorsque qu'on sort de la zone active (defini par exemple par un movieclip en alpha 0), la var "over" revient a 0 et donc on lance la fonction qui permet de fermer le sous menu...


A+

-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
Messages postés
54
Date d'inscription
mercredi 9 juin 2004
Statut
Membre
Dernière intervention
19 août 2009

merci :) je prend note et je vais lire la doc là dessus pour en savoir plus, merci
Messages postés
54
Date d'inscription
mercredi 9 juin 2004
Statut
Membre
Dernière intervention
19 août 2009

bon, j'ai un peu regardé ces fonctions, faits quelques test pour les essayer.

seulement, pour le menu, comment faire pour savoir si la souris est sur le bouton ou pas ?
si j'essaye de faire Klatu.over (Klatu etant un objet) il ne semble pas connaitre le "over"
Messages postés
54
Date d'inscription
mercredi 9 juin 2004
Statut
Membre
Dernière intervention
19 août 2009

je regarde ça demain matin, et je tiens au courant ^^


Rati.merci = true
Messages postés
54
Date d'inscription
mercredi 9 juin 2004
Statut
Membre
Dernière intervention
19 août 2009

ok, j'ai aps encore testé, mais si le Rollout ne marche pas pour l'instant, là ça se limite a utiliser une variable en plus ?

si il ratait sa fermeture avant, pourquoi le changement de variable fonctionnerait mieux ?
Messages postés
54
Date d'inscription
mercredi 9 juin 2004
Statut
Membre
Dernière intervention
19 août 2009

triple post :s

merci, ça a bien resolu mon probleme ^^
Messages postés
54
Date d'inscription
mercredi 9 juin 2004
Statut
Membre
Dernière intervention
19 août 2009

une derniere chose. maintenant, quand je mets la souris dessus, le menu se deroule, puis les text des liens aparaissent bien, mais lorsque la souris est juste sur le texte, la zone de survol du menu est en "rollout" et donc le menu tente de se fermer. il y a une façon simple de gerer ça ?
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

Comment est composé ton menu ?


-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
Messages postés
54
Date d'inscription
mercredi 9 juin 2004
Statut
Membre
Dernière intervention
19 août 2009

un calque action
un calque avec les liens (mots clicables)
un calque avec la zone de survol, invisible qui fait plus grand que le fond de couleur
un calque avec les fond de couleur pour l'effet visuel



Si je mets la zone de survol devant les mots, ils semblent incliquables, si je mets les mots devants, c'est clicable, mais quand je suis sur le mot, ça lance le rollout :'(

je peux tenter de separer ça et de l'exporter si tu veux ?
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

Puis-je voir ton fla ?


-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)