IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

interdire le copier coller (partiellement)


Sujet :

JavaScript

  1. #21
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 661
    Billets dans le blog
    1
    Par défaut
    oups...

    oublié de mettre le code dans le post pérécedent ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>copiez moi</title>
     
    <script type="text/javascript">
    function stopCopy(){
     
    var ObjStop=document.getElementById('stop')
    ObjStop.style.zIndex=9999;
    alert(ObjStop.style.zIndex)
    ObjStop.onclick=function(evt){
    			  		evt=(evt)?evt:window.event;
    			  		if (evt.stopPropagation) {evt.stopPropagation();}
    					else{evt.cancelBubble = true;}
    					}
    		}
     
     
    </script>
    <style type="text/css">
     
     
     
    tableau {z-index:1;
    		  position:absolute;}
    tr.td.div {position:relative;}		  
    #stop {background:transparent;
    		height:100%; 
    		width:100%;
    		position: absolute;
    		top:0;
    		left:0;}		  
     
    #stop {z-index:9999 !important;}		
    </style>
    </head>
     
    <body onload="stopCopy()" >
    <div id="stop">&nbsp;</div>
    <div id="tableau" style="background-color:red;top:0;left:0;" onclick="alert('coucou')">
    <table border="1" width="100%" >
      <tr>
        <td ><div>copiez moi!</div></td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
      </tr>
      <tr>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
      </tr>
      <tr>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
      </tr>
      <tr>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
      </tr>
      </table>
      <div style="position:relative;background-color:lime;">test de texte dasn un div au lieu d'un td</div>
      </div>
    </body>
    </html>
    IE gère vraiment le Zindex des TextNodes comme une quiche moisie
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  2. #22
    Membre éclairé Avatar de tavarlindar
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 262
    Par défaut
    Mekal,

    Cela ne fonctionne pas ... si on ne peut pas sélectionner le tableau, il suffit de copier la page ou tout simplement mettre la souris ailleurs que sur le tableau et étendre la sélection.

    SpaceFrog,

    ta solution me parait compliquée...

  3. #23
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 661
    Billets dans le blog
    1
    Par défaut
    ça c'est juste une question d'evenement ...
    ce qui est étonnant c'est que justement les TextNode s'exemptent du zindex ...
    les textNodes sont en zindex 1 et le div en 9999
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  4. #24
    Invité
    Invité(e)
    Par défaut
    il faudra alors l'etendre a tout le document et revenir a ma premiere proposition je ne voit pas d'autre solution.

    peut etre avec la solution du div au dessus ?

  5. #25
    Membre éclairé Avatar de tavarlindar
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 262
    Par défaut
    S'il est difficile d'interdire qu'une partie, peut-être est-il plus facile de tout interdire mais autoriser une partie. La solution que je recherche consisterait donc à interdire la copie sur toute la page, mais autoriser la sélection d'un champ input text afin que l'utilisateur puisse quand même taper un critère de recherche. Plus généralement interdire tout mais avoir la possibilité de déactiver l'interdiction sur certain champ.

  6. #26
    Membre éclairé Avatar de tavarlindar
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 262
    Par défaut
    je pense avoir trouver la solution .

    Je conserve le code qui "interdit" la copie de la page et je rajoute sur mes champ input le code suivant ;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input id='nom_famille' type="text" name="nom_famille" value="<?=$_SESSION['nom_famille'];?>" size="10" onClick="document.getElementById('nom_famille').focus();">
    ainsi quand je clique sur un champ, le curseur se positionne sur le champ !
    à tester sous mac.

  7. #27
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 661
    Billets dans le blog
    1
    Par défaut
    onmouseover soinon tu auras le meme souci de drag à coté

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>copiez moi</title>
     
    </head>
     
    <body >
    <table border="1" width="100%" onmouseover="document.getElementById('fake').focus()">
      <tr>
        <td ><div>copiez moi!</div></td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
      </tr>
      <tr>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
      </tr>
      <tr>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
      </tr>
      <tr>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
      </tr>
      </table>
      <input type='text' id="fake" style="border:0;height:0;width:0; line-height:0;font-size:0"></div>
    </body>
    </html>
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  8. #28
    Membre éclairé Avatar de tavarlindar
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 262
    Par défaut
    ? je ne comprends pas
    onmouseover sinon tu auras le même souci de drag à coté
    aucun soucis détecté ....

  9. #29
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 661
    Billets dans le blog
    1
    Par défaut
    ben si tu fais sur le onclick du tableau ...
    si tu commences à drager en dehors du tableau .?..

    comme ça j'arrive à copier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>copiez moi</title>
     
    </head>
     
    <body >
    <table border="1" width="100%" onclick="document.getElementById('fake').focus()">
      <tr>
        <td ><div>copiez moi!</div></td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
      </tr>
      <tr>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
      </tr>
      <tr>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
      </tr>
      <tr>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
        <td >copiez moi!</td>
      </tr>
      </table>
      <input type='text' id="fake" style="border:0;height:0;width:0; line-height:0;font-size:0" onfocus='this.blur()'></div>
    </body>
    </html>
    toujours à cause du bug sous IE avec les textNodes qui echappent à l'heritage

    pas sur le onmouseover
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  10. #30
    Membre éclairé Avatar de tavarlindar
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 262
    Par défaut
    Chez moi pas de problème.

    Rappel j'ai mis le code suivant sur les pages à protéger :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    <script language="javascript" type="text/javascript" >
    <!-- Debut
     
    function voleur(e)
    { return false; }
     
     
    function bien()
    { return true; }
     
    if (window.sidebar)
     
     {
      document.onmousedown=voleur;
      document.onclick=bien;
    }
    // fin du script -->
    </script>

  11. #31
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 661
    Billets dans le blog
    1
    Par défaut
    c'est encore plus sur en le doublant sur le onmouseup et onkeyup ...

    quoi que un simple ctrl+A sur la page et hop on choppe tout
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  12. #32
    Membre éclairé Avatar de tavarlindar
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 262
    Par défaut
    exact un simple ctrl+A permet de copier ....

    donc je fais quoi maintenant docteur ?
    Interdire le ctrl+A ?

  13. #33
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 661
    Billets dans le blog
    1
    Par défaut
    oui sur me body onkeydown capture la combinaison keycode et return false sur le crt+A

    y'a aussi le click droit ou menu tout selectionner ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  14. #34
    Membre éclairé Avatar de tavarlindar
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 262
    Par défaut
    existe-il une autre méthode que d'utiliser js dans la balise body ? Tous mes pages sont construites à partir du même code et si je modifie la balise body, cela modifiera toutes mes pages . Je souhaite protéger juste quelques pages.

    Par ailleurs comment fais-tu pour interdire le ctrl+a ?

  15. #35
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 661
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    <html>
     
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
    <title>Nouvelle page 2</title>
     
    <script type='text/javascript'>
    function remplaceCtrlTouche(e, toucheInterdite, fonction){
            var key;
            var CtrlDown;
     
            if(window.event) {
                    key = window.event.keyCode;     //IE
                    CtrlDown=(window.event.ctrlKey)?true:false;
            			}
            else  {
                    key = e.which;     //firefox
                    CtrlDown=(e.ctrlKey)?true:false;
                    }
     
            if(CtrlDown) {        //La touche Ctrl à été enfoncée, verfication de combinaison
    			//verification de casse
    			if(toucheInterdite.toLowerCase() === String.fromCharCode(key).toLowerCase()){
    					// ici lancement de la fonction de substitution
                     fonction()
                     // annulation de la fonction originale
                     return false;
                     }
               }
            return true;
    }
     
    function maRecherchePerso(){
    alert('faut pas vouloir copier')
     
    }
     
    </script>
    </head>
     
    <body onkeydown="return this.onkeypress();" onkeypress="return remplaceCtrlTouche(event,'A', maRecherchePerso)">
     
    </body>
     
    </html>
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  16. #36
    Membre éclairé Avatar de tavarlindar
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 262
    Par défaut
    super, cela fonctionne ! j'aurais aimer comprendre la fonction, mais cela me prendrait des heures !
    j'ai remarquer qu'un clic droit sur la souris et tout sélectionner fonctionne mais impossible de coller, donc .... on va dire que c'est bon

    Une fois n'est pas coutume, encore tous mes vifs remerciement pour ton aide au combien précieuse Mr SpaceFrog

    Bien à toi Tavar,

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. [XL-2010] Interdire Copier/Coller hors du workbook
    Par seba_stien dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 28/11/2013, 16h15
  2. interdire Copier/Coller dans un textBox
    Par marocdivers dans le forum C#
    Réponses: 1
    Dernier message: 02/06/2012, 02h38
  3. Interdire des caractères sur un copier-coller
    Par jbrasselet dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 09/02/2012, 10h58
  4. Interdire le copier/coller
    Par SheikYerbouti dans le forum Composants
    Réponses: 3
    Dernier message: 01/02/2011, 11h52
  5. Interdire de déplacier (copier-coller) un fichier ???
    Par beegees dans le forum Autres Logiciels
    Réponses: 6
    Dernier message: 15/03/2006, 22h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo