2012-07-11 2 views
1

Advance Merci pour les réponses. Je voudrais désactiver la touche de raccourci de source de vue pour IE en utilisant javascript. combinaisonComment désactiver la combinaison de touches en utilisant javascript?

function disableCopy() { 
    // current pressed key 
    var pressedKey = String.fromCharCode(event.keyCode).toLowerCase(); 
    if (event.ctrlKey && (pressedKey == "c")) { 
     // disable key press porcessing 
     event.returnValue = false; 
    } 
} 

Peut-on suggérer comment désactiver "Alt + V + C": Pour désactiver "Ctrl + C", je suis en utilisant la fonction followinf?

+5

Vous vous rendez compte que cela n'empêchera pas les gens de voir la source s'ils sont déterminés, n'est-ce pas? – Utkanos

+1

Vous souhaitez désactiver l'affichage du code source HTML? – Anuraj

+1

Je ne sais pas pourquoi le downvote. La question peut être imparfaite dans le concept, mais pour ce qu'elle est, elle est assez bien posée et l'OP montre une tentative de code. +1 – Utkanos

Répondre

2

Chaque navigateur a sa fonctionnalité intégrée pour afficher le code source ou la page Web. Nous pouvons faire une chose. C'est la désactivation du clic droit sur votre page.

Pour désactiver clic droit utilisez le code suivant:

<SCRIPT TYPE="text/javascript"> 
function disableselect(e){ 
return false 
} 
function reEnable(){ 
return true 
} 
//if IE4+ 
document.onselectstart=new Function ("return false") 
//if NS6 
if (window.sidebar){ 
document.onmousedown=disableselect 
document.onclick=reEnable 
} 
</SCRIPT> 

Rappelez-vous une chose. Nous pouvons voir cette source en utilisant firebug ou d'autres outils tiers. Nous ne pouvons donc pas faire cela à 100%.

+2

NS6 ?! Bienvenue en 2002! – BunjiquoBianco

+1

Je pense que les commentaires ci-dessous la question rendent indigne de réponse. Pas d'une manière dure - juste que, comme cela a été souligné, empêcher l'accès au code source est un non-démarreur. – Utkanos

+1

@Utkanos +1. Cela et le fait que le code est * grossièrement * périmé. – BunjiquoBianco

0

Vous ne devriez pas vraiment empêcher le code de visualisation. Pourquoi?

Raisons

  1. Finalement, après tous vos efforts, si quelqu'un est déterminé qu'il peut encore voir votre code.

  2. Vous allez diffamer votre site Web en faisant cela. Vous aurez l'habitude de vous comporter comme un "noob", car normalement les autres développeurs voient les codes et ils franchiront votre mesure de sécurité en désactivant simplement javascript.

  3. Il n'y a aucune information sensible dans votre code (je suppose) qui peut être utilisée pour constituer une menace. Mais, si vous avez un code qui peut être utilisé contre le site Web, vous devriez vraiment chercher à supprimer ce code et rendre le site Web sécurisé.

combinaisons Désactiver

document.onkeydown = function(e) { 
     if (e.altKey && (e.keyCode === 67||e.keyCode === 86)) {//Alt+c, Alt+v will also be disabled sadly. 
      alert('not allowed'); 
     } 
     return false; 
};​ 

Toute façons, parce que je sais comment le faire, je vais vous montrer.

ici pour désactiver un clic droit:

function clickIE() {if (document.all) {return false;}} 
function clickNS(e) {if 
(document.layers||(document.getElementById&&!document.all)) { 
if (e.which==2||e.which==3) {return false;}}} 
if (document.layers) 
{document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;} 
else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;} 
document.oncontextmenu=new Function("return false") 
+0

La variable * message * dans le code du bas est totalement inutile, elle ne sera jamais sortie. – BunjiquoBianco

+0

Oups! Je n'ai pas réalisé cela, fait des modifications. –

+0

"e.keyCode === 67 && e.keyCode === 86" Je ne vois pas quand cela devient vrai .. aussi, il devrait être la clé alt pas la touche ctrl – 0xc0de

0

alt + V + C est une combinaison très étrange d'avoir. Bien que le code suivant fonctionne, c'est une sorte de piratage.

if (event.altKey) { 
    if (event.keyCode == 67 && window.prevKey == 86) 
     event.preventDefault(); 
    else if (event.keyCode == 86 && window.prevKey == 67) 
     event.preventDefault(); 
    window.prevKey = event.keyCode 
} 
+0

En regardant les autres réponses je peux deviner ce que alt + V + C fait maintenant ... – 0xc0de

Questions connexes