J'ai un très léger problème avec mon script de menu par click droit
sous Firefox, à savoir que les menus sont décalés vers la droite...
Alors que ça marche bien sous IE.
Mon script est le suivant :
document.write("<style>h3{color: #555555; font: 20px 'Trebuchet
MS', Tahoma, Geneva, Arial, Helvetica, sans-serif;}</style>")
document.write("<style>#mleft{color: #0FB000; text-align:center; width:132px; margin-bottom:2px;}</style>")
document.write("<style>.cbar
h3{background-image:url(menu/mh.gif); margin:0px 3px; text-align:left;
padding: 9px 8px 3px 8px; line-height:13px;}</style>")
document.write("<style>.cbar .box
{background-image:url(menu/mb.gif); background-position:bottom;
margin:0px 3px 3px 3px; text-align:left; width:126px;
padding-bottom:5px;}</style>")
document.write("<style>ul.menu
li{background-image:url(menu/mp.gif); background-repeat: repeat-x;
padding:3px 3px;}</style>")
document.write("<style>ul.menu li div{background-image:
url(menu/mg-copie.gif); background-position:0px 5px; background-repeat:
no-repeat; padding-left: 9px; margin-left:3px;
line-height:14px;}</style>")
document.write("<style>UL {margin: 0px 5px; list-style-type: none;}</style>")
var mavar='?mavar=';
var n=new Boolean();if(navigator.appName=='Netscape'){n=true;}else{n=false;} // Netscape(Mozilla) ou IE par défaut
function afficher_menu(e){
if(n){gauche=e.pageX;if(window.innerWidth-e.pageX<document.getElementById('m').offsetWidth){gauche-=document.getElementById('m').offsetWidth;}
haut=e.pageY;if(window.innerHeight-e.pageY<document.getElementById('m').offsetHeight){haut-=document.getElementById('m').offsetHeight;if(haut<0){haut=5}}
with(document.getElementById('m').style){left=gauche; top=haut; visibility='visible';}}
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(n){document.getElementById('m').style.visibility='hidden';}else{m.style.visibility='hidden';}}
function menu_over(e){if(n){if(e.target.className=='rub'){with
(e.target.style){color='#0FBFFF';}window.status=e.target.getAttribute('url');
}}
else{if(event.srcElement.className=='rub'){with (event.srcElement.style){color='#0FBFFF';}status=event.srcElement.url; }}}
function menu_out(e){if(n){if(e.target.className=='rub'){with (e.target.style){color='#0FB000';}window.status='';}}
else{if(event.srcElement.className=='rub'){with(event.srcElement.style){color='#0FB000';}status='';}}}
function
menu_click(e){if(n){if(e.target.className=='rub'){location=e.target.getAttribute('url')+mavar+e.target.getAttribute('url');}}
else{if(event.srcElement.className=='rub'){location=event.srcElement.url+mavar+event.srcElement.url;}}}
document.oncontextmenu=afficher_menu;document.onmouseover=menu_over;document.onclick=menu_click;document.onmouseout=menu_out;
document.write("<div id='m' style='position: absolute; visibility:
hidden; width:126px; cursor: default; font: menu;'><div
id='mleft' class='cbar'><h3><center>Menu des
Guedins</center></h3><div class='box'><ul
class='menu'><li><div class='rub'
url='accueil.htm'>Accueil</div><div class='rub'
url='photos.htm'>Photos</div><div class='rub'
url='blagues.htm'>Blagues</div></li><li><div
class='rub'
url='forum.htm'>Forum</div></li><li><div
class='rub'
url='contacts.htm'>Contacts</div></li><li></li><li><div
class='rub' url='javascript:history.go(-1)'> Précédent
</div><div class='rub' url='javascript:history.go(1)'>
Suivant </div><div class='rub'
url='javascript:history.go(0)'> Actualiser
</div></li></ul></div></div></div><body
onClick='cacher_menu()'>")
Si vous voyez d'autres erreurs ou des simplifications possibles, merci de m'en faire part...