hackademius
Messages postés172Date d'inscriptionmercredi 29 janvier 2003StatutMembreDernière intervention24 février 2008
-
16 avril 2005 à 10:48
hackademius
Messages postés172Date d'inscriptionmercredi 29 janvier 2003StatutMembreDernière intervention24 février 2008
-
18 avril 2005 à 12:47
salut a tous , j'ai un ptit probleme et j'ai pas trouvé de solutions ici
Dans mons cript javascipt j'ai :
GhislainLavoie
Messages postés289Date d'inscriptionvendredi 11 mars 2005StatutMembreDernière intervention 3 avril 20083 16 avril 2005 à 17:00
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-
hackademius
Messages postés172Date d'inscriptionmercredi 29 janvier 2003StatutMembreDernière intervention24 février 2008 17 avril 2005 à 13:06
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>
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"
}
}
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.
GhislainLavoie
Messages postés289Date d'inscriptionvendredi 11 mars 2005StatutMembreDernière intervention 3 avril 20083 17 avril 2005 à 19:17
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.