如何检测复制和在javascript粘贴?(how to detect copy and paste

2019-07-29 16:06发布

我有两个领域之一是EMAILID,另一个是在我的形式密码。 我想检测,当用户重新输入电子邮件地址和密码不是他应该不能复制上面。 他不得不重新编写manually.Just像谷歌的形式

Answer 1:

您可以禁用ctrl+v组合和right click ,以及。

IE浏览器,你可以挖掘到以下事件处理程序:

onpaste="return false;" 
oncut="return false;" 
oncontextmenu="return false;" 
oncopy="return false;".

这里是所有浏览器解决方法:

function noCTRL(e) {
      var code = (document.all) ? event.keyCode : e.which;
      var ctrl = (document.all) ? event.ctrlKey : e.modifiers & Event.CONTROL_MASK;
      var msg = "Sorry, this functionality is disabled.";
      if (document.all) {
        if (ctrl && code == 86) {
          //CTRL+V
          alert(msg);
          window.event.returnValue = false;
        } else if (ctrl && code == 67) { 
         //CTRL+C (Copy)
          alert(msg);
          window.event.returnValue = false;
        }
      } else {
        if (ctrl == 2) {
          //CTRL key
          alert(msg);
          return false;
        }
      }
    }

在HTML部分,你的领域将是这样的:

Email :<input name="email" type="text" value=""/><br/>
Password :<input name="password" type="password" value=""/><br/>
Confirm Email :<input name="email" type="text" value="" onkeydown="return noCTRL(event)"/>    
Confirm Password :<input name="password" type="password" value="" onkeydown="return noCTRL(event)"/>

我不认为用户可以复制密码字段,如果输入类型为password

希望这可以帮助。

注意:

  1. 在浏览器中禁用JavaScript的将让用户为所欲为
  2. 始终牢记这一点:尊重用户的自由。


文章来源: how to detect copy and paste in javascript?