begin process at 2012 05 29 08:24:20
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Javascript

 > 

Archives

 > 

AU SECOURS !!!

 > 

document.getElementById marche pas


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

document.getElementById marche pas

samedi 16 avril 2005 à 10:48:19 | document.getElementById marche pas

hackademius

Membre Club
salut a tous , j'ai un ptit probleme et j'ai pas trouvé de solutions ici
Dans mons cript javascipt j'ai   :

 isIE = (document.all)?true:false;                //IE 6
  isNN6 = (document.getElementById)?true:false;
  isNN1=(document.getElementByName)?true:false;  //firefox
  isNN4=(document.layers)?true:false;



bon sous IE6 , isIE = true , le reste a false
sous firefox , isNN1=true le reste a false
mais sous netscape , tout est a false , ou est le probleme ?

merci de votre aide. 
Pour info : j'ai netscape 7.2
samedi 16 avril 2005 à 17:00:28 | Re : document.getElementById marche pas

GhislainLavoie

Salut!

document.all ==> EI
document.getElementById ==> EI , FIREFOX, et NS6+
document.getElementByName ==> ça n'existe pas
document.getElementsByName ==> EI , FIREFOX, et NS6+
document.layers ==> NS4-

A+, Ghislain
samedi 16 avril 2005 à 17:03:21 | Re : document.getElementById marche pas

GhislainLavoie

Oups j'oubliais : document.getElementById et document.getElementsByName c'est EI5+

A+
 
dimanche 17 avril 2005 à 13:06:55 | Re : document.getElementById marche pas

hackademius

Membre Club
mais alors pourquoi mon menu , qui fonctionne avec ce script ne fonctionne pas sous firefox et netscape ? ca vien des liens des liens eux meme ?

mon lien est celui ci :
<tr><td  class="soustitre1" onmouseover="this.className='soustitreover';title='statistiques des visites'" onmouseout="this.className='soustitre1'" onclick="ouvrirLien('messtats.php','1')">Stats</td></tr>

merci.
dimanche 17 avril 2005 à 18:09:52 | Re : document.getElementById marche pas

GhislainLavoie

Salut!

Si tu donnerais le code de ton menu peut-être pourrait-on trouver ce qui cloche.  Car des bribe de code c'est trop peu pour trouver l'erreur.

A+, Ghislain
dimanche 17 avril 2005 à 18:35:34 | Re : document.getElementById marche pas

hackademius

Membre Club

ah oui exact , le voici : menu.php
<script language="javascript">

var TotalMenu=9;

function ouvrirLien(url,ouverture) {
  // Cette fonction permet d'ouvrir trois type de lien
  // 1 : Dans la fenêtre courante
  // 2 : Dans une nouvelle fenêtre
  // 3 : Dans une frame dont la cible doit être précisé
  switch (ouverture) {
    case "0" :
      // Ouverture dans la fenêtre courante
      document.location.href = url;
      break;
    case "1" :
      // Ouverture d'une nouvelle fenêtre
      window.open(url)
      break;
    case "3" :
      // Ouverture dans une frame
      window.top.parent.frames[cible].location.href = url
      break;
    default :
      // Normalement, on n'arrive jamais ici
      alert('Erreur : Cette valeur est hors limite');
      break;
  }
}

function clickMenu(num)
{

  // Booléen reconnaissant le navigateur (vu en partie 2)
  isIE = (document.all)?true:false;                //IE 6
  isNN6 = (document.getElementById)?true:false;
  isNN1=(document.getElementByName)?true:false;  //firefox
  isNN4=(document.layers)?true:false;

  // Compatibilité : l'objet menu est détecté selon le navigateur
  if (isIE) menu = document.all['menu' + num];
  if (isNN6) menu = document.getElementById('menu' + num);
  for (i=1;i<=TotalMenu;i++)
  {
 if (document.all['menu'+i])
  {
     if (i != num)
   {
       if (isIE) menuDiff = document.all['menu'+i];
       if (isNN6) menuDiff = document.getElementById('menu'+i);
       if (menuDiff.style.display != "none")
    {
        menuDiff.style.display = "none"
       }
   }
  }
 }


  // On ouvre ou ferme
  if (menu.style.display == "none")
  {
    // Cas ou le tableau est caché
    menu.style.display = ""
  } else
  {
    // On le cache
    menu.style.display = "none"
   }
}

</script>


<style type="text/css">
td.titre1 {
vertical-align:middle;
 color: #000000;
 cursor: hand;
 background-image: url(/design/titremenu.gif);
 height:16px;
 background-repeat: repeat-x;
 text-indent:5px;
}
.input {
 background-color: #006699;
 border: thin #000066;
 height:18px;
 font-family: "Times New Roman", Times, serif;
}
td.soustitre1 {
 font-family: Verdana, Arial, Helvetica, sans-serif;
 font-size: 11px;
 background-image: url(/design/titressmenu.gif);
 background-repeat: repeat-x;
 color: #000000;
 cursor: hand;
 text-indent:15px;
 height: 12px;
}
td.soustitreover {
 font-family: Verdana, Arial, Helvetica, sans-serif;
 font-size: 11px;
 background-image: url(/design/titressmenuover.gif);
 background-repeat: repeat-x;
 color: #000000;
 cursor: hand;
 text-indent:15px;
 height: 12px;
}
td.titreover {
 vertical-align:middle;
 height:16px;
 color: #000000;
 cursor: hand;
 background-image: url(/design/titremenuover.gif);
 background-repeat: repeat-x;
 text-indent:5px;
}
.Style1 {font-size: 80%}
</style>

 

<? // Accueil // ?>
<table width="125px" border="0" cellspacing="0">
<tr>
<td  class="titre1" onmouseover="this.className='titreover';title='Accueil'"  onmouseout="this.className='titre1'" onclick="ouvrirLien('index.php','0')">Accueil</td>
</tr>
</table>


<? // Contact ?>
<table width="125px" border="0" cellspacing="0">
<tr><td  class="titre1" onmouseover="this.className='titreover';title='Pour me contacter'"  onmouseout="this.className='titre1'" onClick="clickMenu(3)">Contact</td></tr>
</table>
<table style="display:none" width="125px" border="0" cellspacing="0" id="menu3"  >
<tr><td  class="soustitre1" onmouseover="this.className='soustitreover';title='Inscrire un message dans le livre d\'or'" onmouseout="this.className='soustitre1'" onclick="ouvrirLien('book.php','0')">Livre d'or</td></tr>
<tr><td  class="soustitre1" onmouseover="this.className='soustitreover';title='M\'envoyer un mail'" onmouseout="this.className='soustitre1'" onclick="ouvrirLien('ecrire.php','0')">Email</td></tr>
</table>

<? // Communiquer ?>

<table width="125px" border="0" cellspacing="0">
<tr><td  class="titre1" onmouseover="this.className='titreover';title='Communiquer'"  onmouseout="this.className='titre1'" onClick="clickMenu(4)">Communiquer</td></tr>
</table>
<table style="display:none" width="125px" border="0" cellspacing="0" id="menu4" >
<tr><td  class="soustitre1" onmouseover="this.className='soustitreover';title='Participer au mini forum interne'" onmouseout="this.className='soustitre1'" onclick="ouvrirLien('forum/index.php','0')">MiniForum</td></tr>
<tr><td  class="soustitre1" onmouseover="this.className='soustitreover';title='Participer au forum'" onmouseout="this.className='soustitre1'" onclick="ouvrirLien('http://forum.rogerstudio.com','0')">BigForum</td></tr>
<tr><td  class="soustitre1" onmouseover="this.className='soustitreover';title='Espace rencontres gratuit'" onmouseout="this.className='soustitre1'" onclick="ouvrirLien('http://rencontres.rogerstudio.com','0')">Rencontres</td></tr>
</table>




Bon il ya dautres menus , mais ils ont le meme principe : un tableau princpal avec le titre et un tableau secondaire (visible ou non) avec les liens.
Et mon probleme , c'est que ce menu ne fonctionne pas sous firefox et netscape.
Meme la classe "td.titreover " devrai afficher la main au dessus du bouton , ca ne marche pas ça.

merci.

dimanche 17 avril 2005 à 19:17:49 | Re : document.getElementById marche pas

GhislainLavoie

Salut!

C'est le IF (en gras) dans ta fonction clickMenu qui gachait tout j'ai fait la correction.

function clickMenu(num)
{

// Booléen reconnaissant le navigateur (vu en partie 2)
isIE = (document.all)?true:false; //IE 6
isNN6 = (document.getElementById)?true:false;
isNN4=(document.layers)?true:false;

// Compatibilité : l'objet menu est détecté selon le navigateur
if (isIE) menu = document.all['menu' + num];
if (isNN6) menu = document.getElementById('menu' + num);
for (i=1;i<=TotalMenu;i++)
{
if ((document.all && document.all['menu'+i]) || (document.getElementById && document.getElementById('menu'+i)))
{
if (i != num)
{
if (isIE) menuDiff = document.all['menu'+i];
if (isNN6) menuDiff = document.getElementById('menu'+i);
if (menuDiff.style.display != "none")
{
menuDiff.style.display = "none"
}
}
}
}

Pour ce qui est du curseur, utilise pointer au liei de hand.

A+, Ghislain

lundi 18 avril 2005 à 02:43:32 | Re : document.getElementById marche pas

chimelpremier

Bonjour,

ou mieux; les deux :

cursor:hand /* ie4 et 5 */; cursor:pointer /* les autres */
lundi 18 avril 2005 à 12:47:02 | Re : document.getElementById marche pas

hackademius

Membre Club
ah ok , je savais pas que pointer c'etait la main , je pensai que c'etait la fleche normale.

Merci a vous les gars, maintenant ca fonctionne trés bien sous firefox, netscape et IE , c'est genial. merci a vous.


Cette discussion est classée dans : true, marche, document, false, getelementbyid


Répondre à ce message

Sujets en rapport avec ce message

probleme verification champs [ par ninipe ] Bonjour a tous,Voila g un petit probleme de code en javascriptje verifie les champs d'un formaulaire par la fonction mailla verif fonctionne pour le c GetElementById Problème... [ par Thundrax ] Pour ne pas reprendre mon ancien post (dsl de la pollution),J'ai donc un script (gentillement trouvé par bultez) qui modifie le style du bouton d'un Bouton radio et bloquer la saisie [ par stamdan ] Bonjour à tous et à toutes,voilà je dois développer une page html pour mon taf. Cette page est découpée en trois partie,ces trois parties déterminent getElementById qui ne marche pas [ par chour03 ] Bonjour !pour faire simple, j'ai une page qui ressembleà ca :......alert(document.i document.getElementById("file").click(); ne marche pas avec firefox [ par _benjy ] re a tous j'ai un script qui dois simuler un click sur le bouton 'parcourir' d'une balise input file document.getElementById("file").click(); // ou fi Fonction simple qui ne marche pas sous Firefox [ par Evangun ] Bonjout à tous, dans la série "le javascript s'acharne contre moi" , voici une fonction qui marche sous IE et pas Firefox, et elle est tellement simpl changement de couleur qui marche sur firefox mais pas sous IE [ par nicomilville ] Salut,je fais un code pour que si la personne est une femme l'arrière plan d'une colone de tableau soit rose... ça marche parfaitement sous Firefox ma attachEvent(); qui ne marche pas et addEventListener(); qui marche ! [ par nicomilville ] Salut,J'ai une fonction qui marche que sur firefox mais pas sous IE !ma fonction :function aff_conversation() { var O_discution = document.createEleme En tête de page html : !DOCTYPE etc.. fait buguer un script. Pourquoi ? [ par tigre19 ] Bonjour, un petit script d'image suivant le curseur marche s'il n'y a pas d'en-tête !DOCTYPE mais ne marche plus dès que je la mets. Pourquoi ? ______ checkbox plus prix [ par gfpl ] Bonjour, voila j'explique mon problème j'ai ai total 6 checkbox plus 3 retour sur div(affiche un texte ) si on click sur tel ou tel check box la s


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales