IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

probleme fonction mouseover


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Par défaut probleme fonction mouseover
    Bonjour a tous,

    J'ai crée un menu, avec 2 images: 1 etat normal, et une qui s'affiche lorsqu' il y a mouseover et lorsqu'il y a selection.

    Mon problème est que les boutons restes sur l'etat mouseover meme si je clique sur une autre sous catégorie

    voici les differente partie de code:

    generation du menu:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    function showbureauSubmenu($lSub) 
        { 
            if($lSub == 0) 
            { 
                $lSub = 1;     
            } 
     
            $sub = '<table width="576" border="0" cellspacing="0" cellpadding="0" height="27" style="margin-bottom:10px"> 
                        <tr height="27" style="background-image:url(./media/imgs/nav/bureau_back.jpg)">';
    sous menu1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $sub .= '<td width="78" height="27"> 
    <td class="submenu" ' . ($lSub  != 1 ?'style="background-image:url 
    (./media/imgs/nav/bureau_back_rol.jpg); text- 
    align:center"' : 'onmouseover="this.style.background=\'url(./media/imgs/nav/bureau_back_rol.jpg)\'"  
    onmouseout="this.style.background=this.style.background=\'url(./media/imgs/nav/bureau_back.jpg)\'" style="text-align:center"' ) . '  
    onclick="document.location=\'bureaux\'" ><nobr>1-BUREAUX</nobr></td>
    sous menu2:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <td width="82" height="27"><td class="submenu" ' . ($lSub  != 
     2 ?'style="background-image:url(./media/imgs/nav/bureau_back_rol.jpg); text-align:center"' : 'onmouseover="this.style.background=\'url(./media/imgs/nav/bureau_back_rol.jpg)\'"  
    onmouseout="this.style.background=this.style.background=\'url 
    (./media/imgs/nav/bureau_back.jpg)\'" style="text-align:center"' ) . '  
    onclick="document.location=\'caissons_pour_bureau\'" ><nobr>1- 
    CAISSONS</nobr></td>
    merci pour vos réponses

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onmouseout="this.style.background=this.style.background=\'url
    Y a bégaiement, là, non ?

    A+

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Par défaut
    en effet lol...

    c'est corrigé...mais ca ne marche toujours pas...

    en fait quand je clique sous la sous categorie

    la sous categorie1 s'affiche sur l'etat normal, et les autres s'affiche direct sur l'etat mouseover

    et si je clique sur la sous categorie 2, la sous categorie 1 ne revient pas a l'etat normal

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Visiblement, c'est que sous IE, parce que avec Firefox, ça donne ce que tu veux ...
    Le menu "Manutention" a l'aire de fonctionner correctement : pourquoi tu reportes pas le code pour les autres ?

    A+

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Par défaut
    En fait je suis en train de le reprog, car manutention par exemple n'est pas optimisé pour l'url rewriting, et donc je dois changer ma source

    et j'ai verifié la catégorie bureau ne marche pas non plus sur firefox....

  6. #6
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par maximew
    et j'ai verifié la catégorie bureau ne marche pas non plus sur firefox....
    Je maintiens
    Quand j'arrive sur l'url ci-dessus, sous Firefox, le roll-over fonctionne mais uniquement sur "1-Bureaux".
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     onmouseover="this.style.background='url(./media/imgs/nav/bureau_back_rol.jpg)'" onmouseout="this.style.background='url(./media/imgs/nav/bureau_back.jpg)'"
    Normal : les onmouseover/onmouseout ne sont pas gérés sur les autres lignes ...

    A+

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Par défaut
    On avance lol...

    en effet il y avait un problème sur l'affichage, reste encore un problème

    si je clique sur l'une des sous catégorie toutes passe en mouseover et n'en change plus....

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Par défaut
    je vous redonne le code telqu'il est actuellement:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    function showbureauSubmenu($lSub)
        {
        	if($lSub == 0)
            {
                $lSub = 1;	
            }
     
        	$sub = '<table width="576" border="0" cellspacing="0" 
    cellpadding="0" height="27" style="margin-bottom:10px">
                        <tr height="27" style="background-image:url
    (./media/imgs/nav/bureau_back.jpg)">
     
    					<td width="78" 
    height="27"><td class="submenu" ' . ($lSub  != 1 ?'style="background-image:url(./media/imgs/nav/bureau_back_rol.jpg); text-
    align:center"' : 'onmouseover="this.style.background=\'url
    (./media/imgs/nav/bureau_back_rol.jpg)\'" 
    onmouseout="this.style.background=\'url(./media/imgs/nav/bureau_back.jpg)
    \'" style="text-align:center"' ) . ' onclick="document.location=\'bureaux\'" ><nobr>1-BUREAUX</nobr></td>
     
                            <td style="width:1px; font-size:1px; 
    background:#ffffff">&nbsp;</td>
     
     
                            <td width="82" height="27"><td class="submenu" ' . 
    ($lSub  != 1 ?'style="background-image:url
    (./media/imgs/nav/bureau_back_rol.jpg); text-align:center"' : 'onmouseover="this.style.background=\'url(./media/imgs/nav/bureau_back_rol.jpg)\'" onmouseout="this.style.background=\'url(./media/imgs/nav/bureau_back.jpg)\'" style="text-align:center"' ) . ' 
    onclick="document.location=\'caissons_pour_bureau\'" ><nobr>2-CAISSONS</nobr></td>

  9. #9
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par maximew
    si je clique sur l'une des sous catégorie toutes passe en mouseover et n'en change plus....
    Hum ....
    Ben là, tu changes de page
    Et dans la page "Bureau", y a pas de onmouseover/onmouseout pour les roll-over du menu !



    A+

  10. #10
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Sur la page sur laquel on arrive (Mobilier Bureau) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <td width="78" height="27"><td class="submenu" onmouseover="this.style.background='url(./media/imgs/nav/bureau_back_rol.jpg)'" onmouseout="this.style.background='url(./media/imgs/nav/bureau_back.jpg)'" style="text-align:center" onclick="document.location='bureaux'" ><nobr>1-BUREAUX</nobr></td>
    Sur la page "Caissons" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <td width="78" height="27"><td class="submenu" style="background-image:url(./media/imgs/nav/bureau_back_rol.jpg); text-align:center" onclick="document.location='bureaux'" ><nobr>1-BUREAUX</nobr></td>
    1) Pas de onmouseover/onmouseout => pas de rollover
    2) ton image de départ est celle du roll-over (bureau_back_rol.jpg)

    C'est que du copié/collé ==> au taff'

    A+

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Par défaut
    la je pense que j'y suis presque...

    mais c'est pas encore ca

    pour mobilier j'ai mis ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <td width="78" height="27"><td class="submenu" ' . ($lSub  != 
    1 ?'onmouseover="this.style.background=\'url
    (./media/imgs/nav/bureau_back_rol.jpg)\'" 
    onmouseout="this.style.background=\'url(./media/imgs/nav/bureau_back.jpg);
     text-align:center"' : 'onmouseover="this.style.background=\'url(./media/imgs/nav/bureau_back_rol.jpg)\'" 
    onmouseout="this.style.background=\'url(./media/imgs/nav/bureau_back.jpg)\'" style="text-align:center"' ) . ' onclick="document.location=\'bureaux\'" 
    ><nobr>1-BUREAUX</nobr></td>

  12. #12
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Sur la génération, je peux pas t'aider, mais visiblement tu traites différemment le 1° sous-menu dans les différents cas (ex : manutention, vestiaires etc.), à part pour Mobilier ...
    Ca semble être le dernier pb à corriger

    A+

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Par défaut
    en fait ca marche pas ca genere un bug....

    je te redonne une derniere fois le code complet, en tout cas merci pour ce que tu as deja fait...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    function showbureauSubmenu($lSub)
     
        {
        	if($lSub == 0)
     
            {
                $lSub = 1;	
            }
     
        	$sub = '<table width="576" border="0" cellspacing="0" 
    cellpadding="0" height="27" style="margin-bottom:10px">
                        <tr height="27" style="background-image:url(./media/imgs/nav/bureau_back.jpg)">
     
     
    					<td width="78" height="27"><td class="submenu" ' . ($lSub  != 1 ?'style="background-image:url(./media/imgs/nav/bureau_back_rol.jpg); text-align:center"' : 'onmouseover="this.style.background=\'url(./media/imgs/nav/bureau_back_rol.jpg)\'" onmouseout="this.style.background=\'url(./media/imgs/nav/bureau_back.jpg)\'" style="text-align:center"' ) . ' onclick="document.location=\'bureaux\'" ><nobr>1-BUREAUX</nobr></td>
     
     
                            <td style="width:1px; font-size:1px; 
    background:#ffffff">&nbsp;</td>
     
     
                            <td width="82" height="27"><td class="submenu" ' . ($lSub  != 1 ?'style="background-image:url
    (./media/imgs/nav/bureau_back_rol.jpg); text-
    align:center"' : 'onmouseover="this.style.background=\'url(./media/imgs/nav/bureau_back_rol.jpg)\'" 
    onmouseout="this.style.background=\'url(./media/imgs/nav/bureau_back.jpg)\'" style="text-align:center"' ) . ' 
    onclick="document.location=\'caissons_pour_bureau\'" ><nobr>2-CAISSONS</nobr></td>
     
     
                            <td style="width:1px; font-size:1px; background:#ffffff">&nbsp;</td>
     
                            <td width="85" height="27"><td class="submenu" ' . ($lSub  != 1 ?'style="background-image:url
    (./media/imgs/nav/bureau_back_rol.jpg); text-align:center"' : 'onmouseover="this.style.background=\'url(./media/imgs/nav/bureau_back_rol.jpg)\'"
     onmouseout="this.style.background=\'url(./media/imgs/nav/bureau_back.jpg)\'" style="text-align:center"' ) . ' onclick="document.location=\'armoires\'" ><nobr>3-ARMOIRES</nobr></td>
     
    						<td style="width:1px; font-size:1px; background:#ffffff">&nbsp;</td>
     
     
                            <td width="147" height="27"><td class="submenu" ' . ($lSub  != 1 ?'style="background-image:url(./media/imgs/nav/bureau_back_rol.jpg); text-align:center"' : 'onmouseover="this.style.background=\'url(./media/imgs/nav/bureau_back_rol.jpg)\'" onmouseout="this.style.background=\'url(./media/imgs/nav/bureau_back.jpg)\'" style="text-align:center"' ) . ' onclick="document.location=\'fauteuils\'" ><nobr>4-SIEGES ET FAUTEUILS</nobr></td>
     
    						<td style="width:1px; font-size:1px; background:#ffffff">&nbsp;</td>
     
     
                            <td width="103" height="27"><td class="submenu" ' . ($lSub  != 1 ?'style="background-image:url(./media/imgs/nav/bureau_back_rol.jpg); text-
    align:center"' : 'onmouseover="this.style.background=\'url(./media/imgs/nav/bureau_back_rol.jpg)\'" onmouseout="this.style.background=\'url(./media/imgs/nav/bureau_back.jpg)\'" style="text-align:center"' ) . ' onclick="document.location=\'accessoires_bureaux\'" ><nobr>5-ACCESSOIRES</nobr></td>
     
                            <td style="width:1px; font-size:1px; 
    background:#ffffff">&nbsp;</td> ';
     
     
     
     
            return $sub;
    merci

  14. #14
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    Citation Envoyé par maximew
    en fait ca marche pas ca genere un bug....
    Ben comment c'est possible que ça fonctionne sur une page et pas les autres ?
    Alors que la structure est la même ?

    Bon courage, en tous cas ...

    A+

  15. #15
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Par défaut
    Il parait que la nuit porte conseille et c'est vrai!!!!

    j'ai reussi ca marche enfin!!!!!

  16. #16
    Expert éminent

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Par défaut
    C'est rassurant
    Mais ce qui aurait été intéressant, c'est de savoir pourquoi ça ne marchait pas hier ...

    A+

  17. #17
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Par défaut
    en fait, il fallait doubler la fonction mouseover, pour que quant on arrive sur la sous categorie elle fonctionne encore, donc voila l'ancien et le vieux code pour 1 seule sous catégorie ( ca suffit pour comprendre je pense)

    ancien code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <td height="27"><td class="submenu" ' . ($lSub  != 
    1 ?'style="background-image:url(./media/imgs/nav/bureau_back_rol.jpg); text-
    align:center"' : 'onmouseover="this.style.background=\'url
    (./media/imgs/nav/bureau_back_rol.jpg)\'" 
    onmouseout="this.style.background=\'url(./media/imgs/nav/bureau_back.jpg)
    \'" style="text-align:center"' ) . ' onclick="document.location=\'bureaux\'" 
    ><nobr>1-BUREAUX</nobr></td>
    nouveau code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <td height="27"><td class="submenu" ' . ($lSub  != 
    1 ?'style="background-image:url(./media/imgs/nav/bureau_back.jpg)" 
    onmouseover="this.style.background=\'url(./media/imgs/nav/bureau_back_rol.jpg)\'" 
    onmouseout="this.style.background=\'url(./media/imgs/nav/bureau_back.jpg)\'" style="text-align:center"' : 'onmouseover="this.style.background=\'url
    (./media/imgs/nav/bureau_back_rol.jpg)\'" 
    onmouseout="this.style.background=\'url(./media/imgs/nav/bureau_back.jpg)
    \'" style="text-align:center"' ) . ' onclick="document.location=\'bureaux\'" 
    ><nobr>1-BUREAUX</nobr></td>
    et voilou!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSL]Probleme fonction recursive
    Par Le-Cortex dans le forum XSL/XSLT/XPATH
    Réponses: 9
    Dernier message: 12/12/2005, 15h10
  2. [Mail] Probleme fonction mail()
    Par tissot dans le forum Langage
    Réponses: 1
    Dernier message: 14/11/2005, 12h55
  3. problème fonctions callback
    Par youp_db dans le forum GTK+ avec C & C++
    Réponses: 1
    Dernier message: 02/10/2005, 14h47
  4. probleme fonction gethostbyname
    Par oclone dans le forum Développement
    Réponses: 6
    Dernier message: 14/04/2005, 10h31
  5. probleme fonction syntaxe
    Par gIch dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 28/02/2005, 09h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo