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 :

Jascript fonction sous IE mais pas sous Netscape ou FF


Sujet :

JavaScript

  1. #1
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut Jascript fonction sous IE mais pas sous Netscape ou FF
    Bonjour,
    j'ai créé un un site dont une artie est en javascript. Tout fonction bien sous sous Netscape et FF
    Probablement mon problèeme de mon menu ou un onclick fait apelle a une fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
      <tr>
       <td class="menu" onmouseover="this.style.backgroundColor='#ff6600';this.style.cursor='pointer'" onmouseout="this.style.backgroundColor='#f6f6f6'" onClick="Menus('who_is_who');">Who is who </td>
      </tr>
    j'ai remplacé le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    onClick="javascript:Menus('who_is_who');"
    (j'ai aussi essayé sans le "javascript:"=meme résultat)
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    onClick="javascript:alert('who_is_who');">
    le alert fonction mais pas ma function Menus(m){}
    Ma function Menus(m){} est déclarée entre le <head></head> de ma page

    Seriez-vous pourquoi j'ai ce probleme?

    Si non, voici pour info le début de ma function. LA suite c'est un répétion en fonction de la valeur de (m)

    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
     
    function Menus(m){
    	var menu = null;   
     
    	if(window.XMLHttpRequest) {
    	menu = new XMLHttpRequest();  
    	}else if(window.ActiveXObject) {
    	menu = new ActiveXObject("Microsoft.XMLHTTP");
    	}else {   
    		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");   
    	return; 
    	}   	
    	if(m=="menu_main"){
    		menu.open("GET","menus/menu_main.asp",true);
    		menu.onreadystatechange=function() { 
           		if (menu.readyState==4) { 	
             		document.getElementById('monmenu').innerHTML = menu.responseText;
          			}
    			}
    		menu.send(null);
    	}else if(m=="who_is_who"){
    		menu.open("GET","menus/menu_who_is_who.asp",true);
    		menu.onReadyStateChange=function() { 
           		if (menu.readyState==4) { 	
             		document.getElementById('monmenu').innerHTML = menu.responseText;
          			}
    			}
    		menu.send(null);
    	}else if
    /* suite du code*/
    Voyez vous une erreur?

    Pourquoi mon "onclick" n'appelle pas ma fonction?

    PS: en bas a droite de mon browser j'ai ce message: "transfering data from localhost...." qui reste constemment affiché

    Merci pour votre aide!
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  2. #2
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    tu as dans firefox une console javascript dans le menu outils, regarde l erreur affichée
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  3. #3
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut
    Salut,
    J'ai regardé, il me donne aucune erreur. C'est pourquooi, je pense que la fonction Menus(m) n'est pas appeler lorsque je clique sur le <td onclick="....
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  4. #4
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    tu as bien un td avec id="monmenu" ?
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  5. #5
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut
    Oui j'ai bien ce td avec l'id dans la page ou se trouve le code javascript (ou se trove ma funtion Menus(m){}
    Mais je pense que c'est mon onClick ci dessous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <tr><td class="menu" onMouseOver="this.style.backgroundColor='#ff6600';this.style.cursor='pointer'" onMouseOut="this.style.backgroundColor='#f6f6f6'" onClick="javascript:Menus('who_is_who');">Who is who</td></tr>
    qui n'arrive pas appele le focntion car rien ne se passe et aucune erreur est affiché dans la consule javascript de FF
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  6. #6
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    et un alert marche ?

    c est qu il y a une erreur dans ta fonction ...

    met un alert('debug') dans ta fonction tout au debut pour voir si tu l'as.

    Si tu l'a pas, met tout le reste de la fonction en commentaire et laisse le alert.

    Apres tu le deplace dans ton code pour trouver la ligne qui fais planter.

    Mais c est etrange que t es pas d erreur dans la console
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  7. #7
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut
    ok j'essaye, merci
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  8. #8
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut
    oui tu as raison, le alert debug est bien vu dans la function, donc je me suis trompe, la fonction est bien appelé avec FF, je vais le deplacer jusqua je trouve la ligne qui m'embete.....
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  9. #9
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut
    C'est ici que ca coince
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    	}else if(m=="who_is_who"){ 
    		menu.open("GET","menus/menu_who_is_who.asp",true);
    		alert('debug');/* CA MARCHE*/
    		menu.onReadyStateChange=function() { 
    		alert('debug');/* CA MARCHE PLUS*/	
           		if (menu.readyState==4) { 	
             		document.getElementById('monmenu').innerHTML = menu.responseText;
          			}
    			}
    		menu.send(null);
    	}else if
    Je connais pas assez bien pour voir ce qu'il ya de mauvais ici
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    menu.onReadyStateChange=function() {
    qu'en pense tu?
    Pourtant, avec IE c'est OK mais avec FF c'est KO

    rapelle:
    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
     
    function Menus(m){
    	var menu = null;   
    	if(window.XMLHttpRequest) {
    	menu = new XMLHttpRequest();  
    	}else if(window.ActiveXObject) {
    	menu = new ActiveXObject("Microsoft.XMLHTTP");
    	}else {   
    		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");   
    	return; 
    	} 
    	if(m=="menu_main"){
    		menu.open("GET","menus/menu_main.asp",true);
    		menu.onreadystatechange=function() { 
           		if (menu.readyState==4) { 	
             		document.getElementById('monmenu').innerHTML = menu.responseText;
          			}
    			}
    		menu.send(null);
    	}else if(m=="who_is_who"){ 
    		menu.open("GET","menus/menu_who_is_who.asp",true);
     
    		menu.onReadyStateChange=function() { 
     
           		if (menu.readyState==4) { 	
             		document.getElementById('monmenu').innerHTML = menu.responseText;
          			}
    			}
    		menu.send(null);
    	}else
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  10. #10
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    pfiou désolé hier soir je devais avoir les yeux collés, il faut ecrire onreadystatechange tout en minuscule
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    522
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 522
    Points : 522
    Points
    522
    Par défaut
    FF fait attention à la casse ??
    Si c'est le cas, je ne savais pas.

  12. #12
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    javascript est sensible a la casse !
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  13. #13
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut
    Merci à tous, J'apprécie enormement votre aide, dommage que je ne puisse pas vous offrir un verre. Ca marche mais pourtant c'est drole car quelque ligne son en majuscule/minuscule et pourtant ca passae. Mais la ca passe et ca marche.

    J'hésite a tout mettre mon code en minuscule. Mais merci et bonne année 2006 d'avance
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    522
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 522
    Points : 522
    Points
    522
    Par défaut
    Citation Envoyé par pierrot10
    J'hésite a tout mettre mon code en minuscule. Mais merci et bonne année 2006 d'avance
    C'est parce que JS fait attention à la casse que tout est en minuscule. Certaines fonctions ont des majuscules (genre OnClick)

  15. #15
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    perdu !

    onclick accepte des majuscules si c est un attribut html d une balise.

    En code javascript c est des minuscules.

    En fait, les regles sont les memes qu en java, minuscule au début de la fonction et ensuite, majuscule au debut de chaque nouveau mot, sauf pour les évènements !

    du coup : parseInt, getElementById mais onmouseover et onclick
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

  16. #16
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    522
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 522
    Points : 522
    Points
    522
    Par défaut
    oups ...

    Autant pour moi ! Je ne savais pas qu'il y a avait un règle de ce genre sur les majuscules (je pensais que c'était défini de manière anarchique). C'est cool ! Ca m'évitera de passer des heures sur des conneries de ce genre.

  17. #17
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 47

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    la ou tu t en rend compte c est si tu fais un truc comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <script type='text/javascript'>
    var a;
    A='toto';
    alert(a);
    </script>
    tu veux bien faire en déclarant ta variable a mais tu te trompes dans la casse en voulant lui affecter une valeur
    Alunissage : Procédé technique consistant à déposer des imbéciles sur un rêve enfantin.

    Cours | FAQ | Sources Javascript
    Cours | FAQ | Sources PHP
    Mes Articles

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

Discussions similaires

  1. [Google Maps] Fonction qui ne fonctionne pas sous chrome mais bien sous firefox
    Par Msysteme dans le forum APIs Google
    Réponses: 1
    Dernier message: 04/06/2015, 20h29
  2. [POO] Fonction ok sous firefox mais pas sous ie
    Par 1r2R1 dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 16/04/2009, 11h55
  3. Monscript fonction sous IE mais pas sous FF
    Par pierrot10 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 24/08/2008, 19h51
  4. Réponses: 1
    Dernier message: 24/01/2008, 12h11
  5. 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

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