zoukankan      html  css  js  c++  java
  • 如何使用JavaScript检测Ctrl+V,Ctrl+C?

     
    若吾皇

    我这么做是出于兴趣。我同意这样做不对,但我认为这应该是OP的决定.此外,代码可以很容易地扩展到添加功能,而不是删除它(就像一个更高级的剪贴板,或者克特+s触发服务器端保存)。

    $(document).ready(function() {
        var ctrlDown = false,
            ctrlKey = 17,
            cmdKey = 91,
            vKey = 86,
            cKey = 67;
    
        $(document).keydown(function(e) {
            if (e.keyCode == ctrlKey || e.keyCode == cmdKey) ctrlDown = true;
        }).keyup(function(e) {
            if (e.keyCode == ctrlKey || e.keyCode == cmdKey) ctrlDown = false;
        });
    
        $(".no-copy-paste").keydown(function(e) {
            if (ctrlDown && (e.keyCode == vKey || e.keyCode == cKey)) return false;
        });
        
        // Document Ctrl + C/V 
        $(document).keydown(function(e) {
            if (ctrlDown && (e.keyCode == cKey)) console.log("Document catch Ctrl+C");
            if (ctrlDown && (e.keyCode == vKey)) console.log("Document catch Ctrl+V");
        });});
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><h3>Ctrl+c Ctrl+v disabled</h3><textarea class="no-copy-paste"></textarea><br><br><h3>Ctrl+c Ctrl+v allowed</h3><textarea></textarea>

    另外,为了澄清,这个脚本需要jQuery库。



  • 相关阅读:
    基于发布/订阅模型的应用程序的主循环设计
    C++使用继承时子对象的内存布局
    安装 CentOS 后的系统配置及软件安装备忘
    环形无锁队列
    并发编程基础
    线程池实现
    Git远程操作
    Unix权限管理
    jquery中,某些写法后来更新导致版本不支持的替代方法
    js相关
  • 原文地址:https://www.cnblogs.com/zjw2004112/p/12654423.html
Copyright © 2011-2022 走看看