¿Cómo deshabilitar el menú contextual predeterminado para ciertos elementos en Mozilla usando Prototype?

StackOverflow https://stackoverflow.com/questions/277924

Pregunta

Estoy tratando de expandir las opciones de navegación del menú contextual en ciertos elementos (específicamente, etiquetas h1 y h2 ) Quiero evitar la acción predeterminada del navegador al hacer clic derecho en esos elementos.

Encontré buena información en esta página .

Sin embargo, no pude encontrar cómo deshabilitar el menú contextual para ciertos elementos. ¿Alguien sabe cómo hacerlo?

Estoy usando un prototipo como mi API de JavaScript.

¿Fue útil?

Solución

Esto evitará que el menú contextual aparezca en un elemento en particular

$(it).observe("contextmenu", function(e){
    e.stop();
});

Entonces, por ejemplo, evita que todas las etiquetas H1 / H2 muestren un menú contextual

$('h1, h2').each(function(it){
    $(it).observe("contextmenu", function(e){
        e.stop();
    });
})

Otros consejos

Puede ofuscarlo un poco, pero en última instancia, su página es solo un invitado en el navegador, (y puede tomar eso para significar de la misma manera que un prisionero es un '' invitado '' del estado, si usted deseo). Por lo tanto, la página debe confiar en el navegador para jugar bien. Si el usuario desea ejecutar un navegador que no funciona bien, o personalizar su navegador existente para hacerlo, esa es siempre su opción. Puede nunca obligar a un navegador a hacer nada. Nada que pueda hacer podrá evitar que el usuario realice una actividad determinada con su navegador si realmente lo desea, una vez que vea una página en su máquina local. Más que eso, los navegadores más recientes ya tienen funciones integradas para facilitar al usuario anular el comportamiento normal cuando algo parece fuera de lo común.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top