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 :

[Debutant] Menu sous IE et fonction Javascript


Sujet :

JavaScript

  1. #1
    Membre du Club Avatar de Pepito
    Profil pro
    Inscrit en
    Août 2004
    Messages
    101
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Août 2004
    Messages : 101
    Points : 57
    Points
    57
    Par défaut [Debutant] Menu sous IE et fonction Javascript
    Ami(e) du jour, bonjour

    J'essaie pour la n-ieme fois de faire un menu dans mon site web.
    J'en ai trouvé un qui marche (enfin presque). Y'a une fonction Javascript pour que le menu marche sous IE.

    Le probleme c'est que dans ma page je fais deux menus situé l'un sous l'autre. Et pour le 2nd menu, la fonction javascript n'a pas l'air de marcher alors que c'est la meme que pour le 1er menu

    Vous pouvez voir ca a l'adresse suivante : http://raiders.eysines.free.fr
    Mon probleme n'a lieu que sous IE. SOus Firefox, ca marche tres bien.


    Voici le code de la fonction javascript
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <script type="text/javascript">
    sfHover = function() {
    	var sfEls = document.getElementById("nav").getElementsByTagName("li");
    	for (var i=0; i<sfEls.length; i++) {
    		sfEls[i].onmouseover=function() {
    			this.className+=" sfhover";
    		}
    		sfEls[i].onmouseout=function() {
    			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
    		}
    	}
    }
    if (window.attachEvent) window.attachEvent("onload", sfHover);
    </script>
    Et voici la partie CSS où on appele la fonction javascript
    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
    <style type="text/css">
    #nav, #nav ul {
    	padding: 0;
    	margin: 0;
    	list-style: none;
    }
     
    #nav a {
    	display: block;
    	width: 0em;
    }
     
    #nav li {
    	float: left;
    	width: 129px;
    }
     
    #nav li ul {
    	position: absolute;
    	width: 10em;
    	left: -999em;
    }
     
    #nav li:hover ul {
    	left: auto;
    }
     
    #nav li:hover ul, #nav li.sfHover ul {
    	left: auto;
    }
    </style>

    Voila, je voudrais savoir pourquoi la fonction marche pour le 1er menu alors qu'il ne marche pas pour le 2nd alors qu'ils sont constitué de la meme facon. :


    Merki pour votre aide.
    Pepit'

  2. #2
    Expert éminent

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Points : 7 641
    Points
    7 641
    Par défaut
    Tu as appellé les deux ul contenants tes deux barres de menu avec le même identifiant.

    Un id doit être unique par définition du W3C. Tu ne peux donc pas avoir deux élements avec l'id nav, d'où tes problèmes après...

  3. #3
    Membre du Club Avatar de Pepito
    Profil pro
    Inscrit en
    Août 2004
    Messages
    101
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Août 2004
    Messages : 101
    Points : 57
    Points
    57
    Par défaut
    ah ok merki pour l'explication.

    Je pensais que je pouvais me servir des id autant de fois que je voulais un peu comme les balises <h1>.

    J'ai donc nommer mon second menu "nav2", et j'ai doubler le CSS et la fonction Javascript.

    Merki beaucoup beaucoup beaucoup !!
    Pepit'

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

Discussions similaires

  1. fonction javascript pr menu
    Par nerovia dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/04/2007, 19h28
  2. fonction javascript fonctionnant sous firefox mais pas sous IE
    Par calitom dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 06/03/2007, 12h56
  3. Fonction javascript qui marche qu'une fois sous Firefox
    Par ns_deux dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 30/08/2006, 10h38
  4. [Debutant] Un menu qui bouge en fonction de la taille de fenetre
    Par hugo69 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/06/2006, 17h23
  5. Réponses: 7
    Dernier message: 17/05/2006, 14h49

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