Version imprimable du sujet
Cliquez ici pour voir ce sujet dans son format original
Forum TourDeJeu > Programmer > Menu Contextuel


Ecrit par: newyn Vendredi 18 Novembre 2011 à 20h58
Bonjour à tous,

Voilà j'essaie de mettre en place un menu contextuel sur mon jeu. Après m'être renseigné un peu, j'ai trouvé un script que j'ai adapté à mes besoins/design etc.

Le menu s'affiche correctement lorsque l'on est connecté au jeu, ceci dit, impossible de cliquer dessus pour m'amener à une autre page. Je pense que le problème est vraiment infime mais hélas je n'ai pas les compétences pour le faire.

Je poste le code ci dessous en espérant qu'une âme charitable et connaisseuse puisse peut être m'aider:

dans le <head>
CODE
<style>
.ContextMenu {

font:menutext;
position:absolute;
text-align:left;
font-family: Arial, Helvetica, sans-serif;
font-size: 10pt;
width:180px;
background-color:grey;
border:1 solid buttonface;
visibility:hidden;
border:2 outset buttonhighlight;
}

.ContextMenuOver{
color:white;
font-size:11;
font-weight:700;
background:black;
}

.ContextMenuOut{
color:black;
font-size:11;
font-weight:500;
background:;
}
</style>
<script language='JavaScript'>
function MontrerMenu() {
// Disance par rapport aux bords de la fenetre
var EspaceDroit = document.body.clientWidth-event.clientX;
var EspaceBas = document.body.clientHeight-event.clientY;

// Affichage du menu suivant la position du curseur
if (EspaceDroit < CMenu.offsetWidth)
CMenu.style.left = document.body.scrollLeft + event.clientX - CMenu.offsetWidth;
else
CMenu.style.left = document.body.scrollLeft + event.clientX;

if (EspaceBas < CMenu.offsetHeight){
CMenu.style.top = document.body.scrollTop + event.clientY - CMenu.offsetHeight; }
else{
CMenu.style.top = document.body.scrollTop + event.clientY; }

// Affichage du menu
CMenu.style.visibility = 'visible';
return false;
}

function MasquerMenu(){
CMenu.style.visibility = 'hidden';
}
</script>


dans le <BODY>
CODE
<span id='CMenu' class='ContextMenu' style='visibility:hidden;'>
<table width='200' cellpadding='0' cellspacing='0' class='texte' style='display:inline;'>

 <tr height='20' onclick='window.location='../dep_lx.php';'
   onMouseOut='this.className='ContextMenuOut';' onMouseOver='this.className='ContextMenuOver';'>
 <td><img src='../images/menu/sedeplacer.png' width='25'></td><td> Se déplacer </td></tr>
 
   <tr height='20' onclick='window.location='attaquer.php';'
   onMouseOut='this.className='ContextMenuOut';' onMouseOver='this.className='ContextMenuOver';'>
 <td><img src='../images/menu/attaquer.png' width='25'></td><td> Attaquer</td></tr>
 
 <tr height='20' onclick='window.location='fouillercadavre.php';'
   onMouseOut='this.className='ContextMenuOut';' onMouseOver='this.className='ContextMenuOver';'>
 <td><img src='../images/menu/fouillercadavre.png' width='25'></td><td> Fouiller cadavre</td></tr>
 
 <tr height='10'><td colspan='2'><hr width='65%' align='center'></td></tr>
 
 <tr height='20' onclick='window.location='../soin_objet.php';'
   onMouseOut='this.className='ContextMenuOut';' onMouseOver='this.className='ContextMenuOver';'>
 <td><img src='../images/menu/uobjet.png' width='25'></td><td> Utiliser objet</td></tr>
 
 <tr height='20' onclick='window.location='recuperer_objet.php';'
   onMouseOut='this.className='ContextMenuOut';' onMouseOver='this.className='ContextMenuOver';'>
 <td><img src='../images/menu/robjet.png' width='25'></td><td> Ramasser objet</td></tr>
 
     <tr height='10'><td colspan='2'><hr width='65%' align='center'></td></tr>
 
 <tr height='20' onclick='window.location='http://kaaleth.free.fr/brutal/main/forum.php';'
   onMouseOut='this.className='ContextMenuOut';' onMouseOver='this.className='ContextMenuOver';'>
 <td><img src='../images/menu/forum.png' width='25'></td><td> Le Forum </td></tr>
</table>
</span>
<script language='JavaScript'>
  if (document.all && window.print) {
    document.oncontextmenu = MontrerMenu;
    document.body.onclick = MasquerMenu;
  }
</script>


Cordialement,

Newyn

Ecrit par: Cedric Mercredi 28 Décembre 2011 à 20h53
Visiblement c'est resolu biggrin.gif

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)