2014-08-31 15 views
5

Questo è un sito cinese casuale http://www.soap-china.com/index.aspdisabilitare tasto destro del mouse, senza js e css

ho notato che tasto destro del mouse è disabilitato. Ho sempre disattivato JavaScript, quindi ho iniziato a eliminare nodo per nodo, css riga per riga in Firebag, ma non ho scoperto cosa disabilita il clic destro.

Come funziona?

Questa non è la prima volta che vedo questo, quindi sono curioso di questo trucco.

+0

possibile duplicato di [Come faccio a disattivare fate clic destro sulla mia pagina web?] (Http://stackoverflow.com/questions/737022/how-do-i-disable-right-click-on-my-web- pagina) – ShaneQful

+0

Wow, è davvero qualcosa. Avrei indovinato 'pointer-events: none' (dato che la selezione non funziona), ma non è quello. Flash, forse, ma non è dappertutto. Buona domanda! – Ryan

+0

C'è il 'onselectstart =" return false "', ma questo è, ovviamente, JavaScript ... – Ryan

risposta

5

E 'fatto con javascript.

mi hai disabilitato JavaScript e posso fare clic destro. Si disabilita con:

<script language="JavaScript"> 
document.oncontextmenu =new Function("return false;") 
</script>  
<body onselectstart="return false"> 

Ci potrebbe essere un problema con il browser, il sito è on-line per me.

+1

Sì. Questo è strano, ma NoScript non ferma questo script. Quindi è la borsa NoScript. Dovrei controllare il javascript di default spento. – Qiao

0

Si tratta di un semplice frammento di Javascript.
La disattivazione di Javascript nella pagina rimuove l'effetto, è possibile che tu abbia dimenticato di averlo acceso sul tuo browser.
Nella parte superiore del loro <body>:

<script language="JavaScript"> 
    document.oncontextmenu =new Function("return false;") 
</script> 
+7

Quel codice ... brucia! – Dave

2

È possibile utilizzare user-select in CSS su tutti gli elementi che non si desidera essere cliccato. Le varianti sono tuttavia necessarie per alcuni browser meno recenti. Come segue;

-webkit-touch-callout: none; 
-webkit-user-select: none; 
-khtml-user-select: none; 
-moz-user-select: none; 
-ms-user-select: none; 
user-select: none; 

Spero che questo aiuti.

9

Sul corpo Tag fare questo:

<body oncontextmenu="return false"> 
... 
</body> 
+3

Bene, semplice ed efficace. Bella risposta. – xZero

0

Il modo migliore per farlo:

<script type="text/javascript"> 
document.oncontextmenu =new Function("return false;") 
document.onselectstart =new Function("return false;") 
</script> 

Buona fortuna.

Problemi correlati