Prob :Petit menu contextuel compatible Netscape,Mozilla, IE

Signaler
Messages postés
29
Date d'inscription
jeudi 29 avril 2004
Statut
Membre
Dernière intervention
20 février 2007
-
Messages postés
29
Date d'inscription
jeudi 29 avril 2004
Statut
Membre
Dernière intervention
20 février 2007
-
Voila, je cherche à adapter un menu context prévu à la base sur IE5 pour Mozilla et eventuellement Netscape mais je galère pour suivre le lien contenu dans les url...c'est : location = evenement.target.url; qui me retourne une valeur undefined...QQ'un sait-il comment récuperer la valeur ?

<html><head><title>Test</title><script language='javascript'><!--
document.write("<style>h3{COLOR:'#555555'; font: 11px 'Trebuchet MS', Tahoma, Geneva, Arial, Helvetica, sans-serif;} #mleft{COLOR: #0FB000; text-align:center; float:left; width:132px; margin-bottom:2px;} .cbar h3{font-weight:bold; background-image:url(mimg/mh.gif); background-position: top left; margin:0px 3px;text-align:left; padding: 9px 8px 3px 8px; line-height:13px;} .cbar .box {background-image:url(mimg/mb.gif); background-position:bottom left; background-repeat:no-repeat; margin:0px 3px 3px 3px; text-align:left; width:126px; padding-bottom:5px; overflow:hidden;} ul.menu li{background-image:url(mimg/mp.gif); background-repeat: repeat-x; padding: 3px 3px;} ul.menu li div{background-image: url(mimg/mg.gif); background-position: 0px 5px; background-repeat: no-repeat; padding-left: 9px; margin-left:3px; line-height:14px;} UL {margin: 0 5px; list-style-type: none;}</style>")

function afficher_menu(evenement){
if(document.layers){document.layers.m.left=evenement.pageX;document.layers.m.top=evenement.pageY;
document.layers.m.visibility='show';}
else if(window.netscape){
gauche=evenement.pageX;haut=evenement.pageY;
with(document.getElementById('m').style){left=gauche; top=haut; visibility='visible';}}
//if(document.body.clientWidth-event.clientX<m.offsetWidth){gauche-=m.offsetWidth;
// if(document.body.clientHeight-event.clientY<m.offsetHeight){haut-=m.offsetHeight;if(haut<0){haut=5}}

else{gauche=document.body.scrollLeft+event.clientX;
if(document.body.clientWidth-event.clientX<m.offsetWidth){gauche-=m.offsetWidth;}
haut=document.body.scrollTop+event.clientY;
if(document.body.clientHeight-event.clientY<m.offsetHeight){haut-=m.offsetHeight;if(haut<0){haut=5}}
with(m.style){left=gauche; top=haut; visibility='visible';}}
return false;}

function cacher_menu(){
if(document.layers){document.layers.m.visibility='hide';}
else if(window.netscape){document.getElementById('m').style.visibility='hidden';}
else{m.style.visibility='hidden';}}

function menu_over(evenement){
if(window.netscape){
if(evenement.target.className=='rub'){
with (evenement.target.style){color='#0FBFFF';} status=evenement.target.url; }}
else{if(event.srcElement.className=='rub'){
with (event.srcElement.style){color='#0FBFFF';} status=event.srcElement.url; }}}

function menu_out(evenement){
if(window.netscape){
if(evenement.target.className=='rub'){
with (evenement.target.style){color='#0FB000';} status='';}}
else{if (event.srcElement.className=='rub'){
with (event.srcElement.style){color='#0FB000';} status='';}}}

function menu_click(evenement){
if(window.netscape){
if(evenement.target.className=='rub'){location = evenement.target.url; }}
else{if(event.srcElement.className=='rub'){location=event.srcElement.url; }}}

document.oncontextmenu=afficher_menu;document.onmouseover=menu_over;document.onclick=menu_click;document.onmouseout=menu_out;

document.write("

:: Menu ::

<li>
Précédent

Suivant

Actualiser
</li> <li>
Accueil

L'ésprit Tuatha
</li> <li>
Les Galeries Photos

La Salle D'Armes

Les Videos

Intro du Spectacle
</li> <li>
Les News

Les Stages
</li> <li>
Ecrivez-Nous . . .

Le Livre d'Or

Les Liens Simpas
</li>

")
</script>

[# Veuiller tester le menu click droit...]
</html>

2 réponses

Messages postés
75
Date d'inscription
lundi 21 juin 2004
Statut
Membre
Dernière intervention
12 octobre 2004

ça marche avec Firefox mais pas sur Opéra 7. Tu devrais mettre la feuille de style dans un fichier.css, éviter les document.write et épurer le code des document.layer et autre antiquités.
Messages postés
29
Date d'inscription
jeudi 29 avril 2004
Statut
Membre
Dernière intervention
20 février 2007

ok, le script est publié, ça roule ...pour IE et mozilla, le reste je sais pas, faut voir..