Prob :Petit menu contextuel compatible Netscape,Mozilla, IE

piedpierre Messages postés 29 Date d'inscription jeudi 29 avril 2004 Statut Membre Dernière intervention 20 février 2007 - 20 juin 2004 à 17:10
piedpierre Messages postés 29 Date d'inscription jeudi 29 avril 2004 Statut Membre Dernière intervention 20 février 2007 - 27 nov. 2004 à 10:49
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

chmel Messages postés 75 Date d'inscription lundi 21 juin 2004 Statut Membre Dernière intervention 12 octobre 2004
21 juin 2004 à 13:16
ç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.
0
piedpierre Messages postés 29 Date d'inscription jeudi 29 avril 2004 Statut Membre Dernière intervention 20 février 2007
27 nov. 2004 à 10:49
ok, le script est publié, ça roule ...pour IE et mozilla, le reste je sais pas, faut voir..
0
Rejoignez-nous