2009-07-07 22 views
8

Estoy tratando de pintar celda en una página html, donde cada celda es un DIV, necesito poder capturar el evento de clic derecho en cualquiera de estas celdas, ¿Cómo puedo hacer eso?Capturar Haga clic con el botón derecho en HTML DIV

<script> 
function fn(event) 
{ 
alert('hello'+event.button); 
} 
</script> 

<div id="cell01" 
     class="" 
     onclick="fn(event);" 
     style="left: 1471px; width: 24px; height: 14px; top: 64px; text-align: center; position: absolute; background-color: rgb(128, 128, 0);">1</div> 

Respuesta

7

Echa un vistazo a esto: Javascript - event properties. El valor para el botón derecho del mouse es 2, aunque también tenga en cuenta que recomienda utilizar los eventos mousedown o mouseup en lugar de hacer clic.

Este es un ejemplo de la página que muestra a la derecha de detección de clics:

function doSomething(e) { 
    var rightclick; 
    if (!e) var e = window.event; 
    if (e.which) rightclick = (e.which == 3); 
    else if (e.button) rightclick = (e.button == 2); 
    alert('Rightclick: ' + rightclick); // true or false 
} 
+0

+1 - por ejemplo - aunque te mereces un +2 ya que le di a jani un +1 también por ser rápido en el sorteo, pero incluiste el código de muestra;) –

3

le recomiendo que echa un vistazo a the event handling page on Quirksmode, ya que incluye una guía para la captura de un click derecho, así como una guía completa para evitar problemas entre navegadores con los eventos.

Sin embargo, una palabra de advertencia: no todos los navegadores permiten detectar los clics con el botón derecho por defecto.

+0

se me adelantó;) – roryf

+0

Me encanta como Microsoft lo hizo bien ... – geowa4

34

la forma más fácil

<div style="height: 100px; background-color: red;" oncontextmenu="window.alert('test');return false;"></div> 
+0

Esta es la respuesta superior. –

+0

gran respuesta ... – aditya

Cuestiones relacionadas