Interdire certaine touche et clique droit

Soyez le premier à donner votre avis sur cette source.

Snippet vu 5 264 fois - Téléchargée 16 fois

Contenu du snippet

script fonctionnant sur les différents navigateurs traditionnelles ayant pour but d'interdire les fonctions de la souris comme leurs équivalents touche clavier, à utiliser avec précaution dans des cas précis pour ne pas géné le visiteur, à utiliser sur des formulaires par exemple, cette je la combine avec un display:none si javascript est désactivé afin de masquer le formulaire ou la page concerné par l'utilisation de se script

Source / Exemple :


function ffalse()
{
return false;
}
function ftrue()
{
return true;
}
document.onselect = new Function ("return false");
document.onselectstart = new Function ("return false");
document.oncontextmenu = new Function ("return false");
document.ondrag = new Function ("return false");
document.ondragend = new Function ("return false");
document.ondragenter = new Function ("return false");
document.ondragleave = new Function ("return false");
document.ondragover = new Function ("return false");
document.ondrop = new Function ("return false");
document.ondragstart = new Function ("return false");
document.ondragdrop = new Function ("return false");
document.oncopy = new Function ("return false");
document.onbeforecopy = new Function ("return false");
document.onpaste = new Function ("return false");
document.onbeforepaste = new Function ("return false");
document.oncut = new Function ("return false");
document.onbeforecut = new Function ("return false");
document.ondblclick = new Function ("return false");
document.onhelp = new Function ("return false");
if(window.sidebar)
{
document.onmousedown = ffalse;
document.onclick = ftrue;
}

function Disable(objEvent) 
{
try {
var sKey;
if(window.event){sKey = window.event.keyCode;} else if(objEvent){sKey = objEvent.which;}   
var objEvent = objEvent || window.event; 
if(sKey == 16 && objEvent.ctrlKey){return false;} //ctrl + majuscule
if(sKey == 27 && objEvent.ctrlKey){return false;} //ctrl + esc
if(sKey == 45 && objEvent.ctrlKey){return false;} //ctrl + ins
if(sKey == 65 && objEvent.ctrlKey){return false;} //ctrl + a
if(sKey == 66 && objEvent.ctrlKey){return false;} //ctrl + b
if(sKey == 67 && objEvent.ctrlKey){return false;} //ctrl + c
if(sKey == 68 && objEvent.ctrlKey){return false;} //ctrl + d
if(sKey == 69 && objEvent.ctrlKey){return false;} //ctrl + e
if(sKey == 70 && objEvent.ctrlKey){return false;} //ctrl + f
if(sKey == 71 && objEvent.ctrlKey){return false;} //ctrl + g
if(sKey == 72 && objEvent.ctrlKey){return false;} //ctrl + h
if(sKey == 73 && objEvent.ctrlKey){return false;} //ctrl + i
if(sKey == 75 && objEvent.ctrlKey){return false;} //ctrl + k
if(sKey == 77 && objEvent.ctrlKey){return false;} //ctrl + m
if(sKey == 78 && objEvent.ctrlKey){return false;} //ctrl + n
if(sKey == 80 && objEvent.ctrlKey){return false;} //ctrl + p
if(sKey == 82 && objEvent.ctrlKey){return false;} //ctrl + r
if(sKey == 83 && objEvent.ctrlKey){return false;} //ctrl + s
if(sKey == 84 && objEvent.ctrlKey){return false;} //ctrl + t
if(sKey == 85 && objEvent.ctrlKey){return false;} //ctrl + u
if(sKey == 86 && objEvent.ctrlKey){return false;} //ctrl + v
if(sKey == 89 && objEvent.ctrlKey){return false;} //ctrl + y
if(sKey == 90 && objEvent.ctrlKey){return false;} //ctrl + z
if(sKey == 91 && objEvent.ctrlKey){return false;} //ctrl + windows
}
catch(ex) {
alert(ex.toString());
}
}
document.onkeydown = Disable;

Conclusion :


il a été tester sur internet explorer, Firefox, aurora, opéra et aucun problème de compatibilité

A voir également

Ajouter un commentaire

Commentaires

quand je disais je ne suis pas la pour jugé du bien fondé de la source, j'entendais par la que je l'aie fait à la demande de quelqu'un, cette personne en fait ce quelle veut, d'autre y trouveront un interet x ou y et pas toujours pour restreindre le copié collé, je suis d'accord sur le fait qu'il est impossible de caché un code source ou d'empeché de capture une image, pour ceux que cela interresserait, voici une astuce en css3 pour les non initié du web

#id de la div ou du span
background-image:url('image.transparente.gif'),url('image.a.protégé.jpg.ou.png');
background-repeat:repeat,no-repeat;
width:la largeur
height:la hauteur

un astuce qui fera que lorsque l'on clique droit sur l'image, la fonction enregistré l'arrière plan sera grisé, mais ces évident que ces pour les non initié
cs_emilia123
Messages postés
122
Date d'inscription
mercredi 19 décembre 2001
Statut
Membre
Dernière intervention
5 janvier 2009

Bonjour,
---------------------------------
se forum n'à pas pour but de critiqué les scripteurs mais bien d'émettre une opinion sur le script lui meme
---------------------------------
C'est exactement ce que je fais depuis le début :)
Je dis que ce script n'a aucun effet pour ceux qui cherchent à copier/coller un contenu, mais contraint les autres utilisateurs (ceux pour qui le site a un intérêt) à subir des restrictions.

Pour mon opinion, ce n'était qu'une "boutade" sur l'incohérence/incompréhension de ta phrase :
---------------------------------
je ne suis pad la pour jugé du bien fondé de la source
---------------------------------
alors que tu la publies ici, et que tu attends donc des commentaires, y compris sur le bien fondé de celle ci.
Si tu la publies, c'est que tu as jugé du bien fondé de cette source, et que tu penses qu'elle est utile ;)
Mais effectivement ca sort du cadre des commentaires... il ne faut donc pas en tenir compte.

---------------------------------
le nombre de site qui ne fonctionne pas quand javascript est désactivé
---------------------------------
Pour le fonctionnement avec ou sans Javascript, tu n'as pas compris ce que je voulais dire.
Tu peux laisser actif le JavaScript jusqu'au le chargement complet du site (donc le site est fonctionnel) puis le désactiver temporairement (ca prend max 10 secondes) pour rendre ton script complètement inutile et effectuer autant de copier/coller de texte ou d'image que tu veux.

C'est pour ça que je répète (pour bien me faire comprendre) :
un tel script qui embête l'utilisateur normal mais qui ne protège de rien ne devrait pas être mis en place sur un site.

EM.
emilia, j'assume parfaitement se choix, certaine personnne y trouveront de l'interet, le nombre de site qui ne fonctionne pas quand javascript est désactivé est gigantesque sur la toile, donc il est la pour celui qui estime qu'il lui est nécessaire, se forum n'à pas pour but de critiqué les scripteurs mais bien d'émettre une opinion sur le script lui meme
cs_emilia123
Messages postés
122
Date d'inscription
mercredi 19 décembre 2001
Statut
Membre
Dernière intervention
5 janvier 2009

Encore une fois, il ne faut pas utiliser ce genre de script.

-------------------
si javascript est désactivé le body est masqué et le visiteur rediriger
-------------------
Le javascript peut être désactivé facilement, même apres le chargement final de la page bloquant ainsi tout script "anti-truc" ou "anti-machin".
Encore une fois, ce genre de "blocage" ne fait que pourrir les internautes "lambda" (qui ne toute façon n'auraient rien cherché à faire) et fera bien rire les internautes "avancés" qui veulent récupérer le contenu (et qui y arriveront sans problème).
Par exemple bloquer la recherche de texte (Ctrl F) est vraiment contre productif pour un site.


-------------------
je n'aie pas à jugé ou à me prononcer sur l'utilisation du script cela ne me concerne pas
-------------------
C'est pourtant toi qui poste ce script ici, c'est donc que tu penses que ce script est intéressant (surtout avec un niveau annoncé comme "initié")... faut juste assumer :)

EM.
MacGaliver
Messages postés
146
Date d'inscription
vendredi 28 mai 2010
Statut
Membre
Dernière intervention
21 juillet 2013
3
Bonjoir,

Moi personnellement, l'anti clic droit je l'utilise rarement. Mais quand je m'en sert pour par exemple limiter les fameux copier collé. Mais pour que cela soit un minimum efficace on peux également utiliser un encodage base 64 pour les images (images grandes = à éviter), interdire le JavaScript désactivé, bloquer le hotlink & l'aspiration du site, et claquer un CDN. On peux aussi créer un gel avec le css not. à l'aide de z-index avec opacity ou rgba.

Cdt.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.