# Event: Rechte Maustaste?



## Faramir (15. Mai 2002)

Wie steuer ich einen JS-Befehl mit der rechten Maustaste an? (den Eventhandler "onRightClick" gibts ja ned)
Keine Angst, ich will keine Rechtsklicksperre machen , ich will mir ein eigenes Kontextmenü erstellen.
Ich habs bis jetzt so, dass mit nem Links-klick das Menü an der Mausposition auftaucht, aber wie das mit dem rechtsklick geht weis ich leider ned ...

hier einfach mal der Code:

```
<html>
<head>
<title>owncontextmenu</title>

<style type="text/CSS">
table{
    border: 1px;
    border-color: #000077;
    border-style: solid;
    font-family: Verdana;
    color: #000077;
    font-size: 10px;}
    
td a{
    color: #000077;
    text-decoration: none;}

.menu{
    position: absolute;
    z-index: 1;
    visibility: hidden;}
    
    
</style>

<script language="JavaScript">

function menu()
{
x=event.clientX;
y=event.clientY;
document.getElementById("menu").style.left  = x;  		
document.getElementById("menu").style.top   = y;
document.getElementById("menu").style.visibility   = "visible";
}


</script>
</head>

<body onClick="menu()">
<div class="menu" ID="menu">
<table border="0" width="150">
<tr>
 <td onmouseover="this.style.backgroundColor='#dddddd';" onmouseout="this.style.backgroundColor='#ffffff';">
  <a href="#">Vorwärts</a>
 </td>
</tr>
 <tr>
  <td onmouseover="this.style.backgroundColor='#dddddd';" onmouseout="this.style.backgroundColor='#ffffff';">
   <a href="#">Rückwärts</a>
  </td>
</tr>
<tr>
  <td onmouseover="this.style.backgroundColor='#dddddd';" onmouseout="this.style.backgroundColor='#ffffff';">
   <a href="#">Aktualisieren</a>
  </td>
</tr>
<tr>
 <td onmouseover="this.style.backgroundColor='#dddddd';" onmouseout="this.style.backgroundColor='#ffffff';">
  <a href="#">Zu Favoriten hinzufügen</a>
 </td>
</tr>
<tr>
 <td onmouseover="this.style.backgroundColor='#dddddd';" onmouseout="this.style.backgroundColor='#ffffff';">
  <a href="#">Quelltext anzeigen</a>
 </td>
</tr>
<tr>
 <td onmouseover="this.style.backgroundColor='#dddddd';" onmouseout="this.style.backgroundColor='#ffffff';">
  <a href="#">Drucken</a>
 </td>
</tr>
</table>
</div>
</body>
</html>
```


----------



## Christoph (16. Mai 2002)

*sieh dir das mal an!*

```
<script language="JavaScript1.2">
//set the skin of the menu (0 or 1, with 1 rendering a default Windows menu like skin)
var menuskin=0

//set this variable to 1 if you wish the URLs of the highlighted menu to be displayed in the status bar
var display_url=1


function showmenuie5(){
var rightedge=document.body.clientWidth-event.clientX
var bottomedge=document.body.clientHeight-event.clientY

if (rightedge<ie5menu.offsetWidth)
ie5menu.style.left=document.body.scrollLeft+event.clientX-ie5menu.offsetWidth
else
ie5menu.style.left=document.body.scrollLeft+event.clientX

if (bottomedge<ie5menu.offsetHeight)
ie5menu.style.top=document.body.scrollTop+event.clientY-ie5menu.offsetHeight
else
ie5menu.style.top=document.body.scrollTop+event.clientY

ie5menu.style.visibility="visible"
return false
}

function hidemenuie5(){
ie5menu.style.visibility="hidden"
}

function highlightie5(){
if (event.srcElement.className=="menuitems"){
event.srcElement.style.backgroundColor="highlight"
event.srcElement.style.color="#EBE8BC"
if (display_url==1)
window.status=event.srcElement.url
}
}

function lowlightie5(){
if (event.srcElement.className=="menuitems"){
event.srcElement.style.backgroundColor="#EBE8BC"
event.srcElement.style.color="black"
window.status=''
}
}

function jumptoie5(){
if (event.srcElement.className=="menuitems"){
if (event.srcElement.getAttribute("target")!=null)
window.open(event.srcElement.url,event.srcElement.getAttribute("target"))
else
window.location=event.srcElement.url
}
}
</script>

<!-- eNDE sCRIPT -->



</HEAD>
<body bgcolor="#EBE8BC" text="#0000FF" link="#000000">
<center>

<h2>Kontextmenü</h2>
<div align="center">
  <center>
  <table border="0" cellpadding="0" cellspacing="0">
    <tr>
      <td width="100%">
      <p align="center">
      <img border="0" src="../bilder/ie.gif" width="25" height="25">&nbsp;&nbsp;&nbsp;&nbsp;
      <img border="0" src="../bilder/ns.gif" width="25" height="25"></td>
    </tr>
  </table>
  </center>
</div><p align="center"><font face="Arial" color="#FF0000">?<script src="http://www.metaman.de/cgi-bin/textlinks/link.pl?kat=js4all&java=on"></script>?</font></p>

<!--aNFANG 2. Teil Script-->

<!--[if IE]>
<div id="ie5menu" class="skin0" onMouseover="highlightie5()" onMouseout="lowlightie5()" onClick="jumptoie5()">
<div class="menuitems" url="http://lalala.de" target="_blank">lalal.de</div>
<div class="menuitems" url="#">Link2</div>
<div class="menuitems" url="#">Link3</div>
<div class="menuitems" url="#">Link4</div>
<div class="menuitems" url="#">Link5</div>
<div class="menuitems" url="#">Link6</div>
<hr>
<div class="menuitems" url="http://www.blub.de" target="_blank">solala</div>
</div>
<![endif]-->
<script language="JavaScript1.2">
if (document.all&&window.print){
if (menuskin==0)
ie5menu.className="skin0"
else
ie5menu.className="skin1"
document.oncontextmenu=showmenuie5
document.body.onclick=hidemenuie5
}
</script>
```


----------



## Faramir (16. Mai 2002)

*thx*

Danke, prob erledigt


----------



## Christoph (16. Mai 2002)

kein Problem


----------



## xamunrax (24. Juli 2002)

Wie hast du das zum laufen gebracht ich bekomm das bei mir einfach net hin !!!

Bei mir ist das Content menu dann im hintergund meiner Page und der Rechts klick ist gesperrt ?!?!

muss man den code in einer Seperaten HTML oder JS datei unter bringen ?!?!

Pls Help ! I´m only a n00b


----------

