2011-05-19 4 views

Répondre

20

Si vous ne voulez pas afficher le menu contextuel sur lien hypertexte, vous pouvez le faire sans faire quoi que ce soit à l'autre partie ou même la durée où il existe. J'ai testé dans IE, Firefox et ça marche.

<a href="#" oncontextmenu="return false;"> Link </a> 
+0

cela fonctionne .. Merci – Tanu

0

Je n'en ai jamais vu en HTML (cela ne veut pas dire que ce n'est pas possible). Cependant, JavaScript peut vous aider ici.

Vous pouvez faire quelque chose comme:

var eventbutton = (isNS) ? myevent.which : myevent.button; 
if((eventbutton==2)||(eventbutton==3)) return false; 
5

Cela devrait fonctionner:

oncontextmenu=”return false;”  

Placez-le sur tout élément que vous souhaitez désactiver un clic droit pour. Sachez que cela provoque une mauvaise expérience utilisateur et les utilisateurs peuvent le désactiver très facilement.

Avis de non-responsabilité: non testé.

+0

Pas de problème. Bonne chance. – Kamyar

0

Essayez cette oncontextmenu="return false;"

1

Si vous ne voulez pas polluer votre HTML avec des événements en-ligne et que vous aimez soutenir IE < 9, vous pouvez utiliser ce beau gâchis:

function addEvent (el, eventType, listener) { 
    if (el.addEventListener) { // W3C-compliant 
     el.addEventListener(eventType, listener, false); 
    } 
    else {// IE-specific 
     el.attachEvent('on'+eventType, listener); 
    } 
} 
addEvent(document.getElementById('myLinkID'), 'contextmenu', function (e) { 
    if (e.preventDefault) { // W3C 
     e.preventDefault(); 
    } 
    else { // IE 
     e.returnValue = false; 
    } 
}); 
+0

"beau gâchis" - haha ​​:-) –

0

dans MVC:

@ Html.ActionLink ("imprimer page", "myprint", "imprimer", null, nouveau {@ oncontextmenu = "return false;")

Questions connexes