我这么做是出于兴趣。我同意这样做不对,但我认为这应该是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");

});});

Ctrl+c Ctrl+v disabled

Ctrl+c Ctrl+v allowed

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

编辑:删除了3行多余的行(涉及E),这要归功于Timdown的建议(见评论)

编辑:增加了对Mac的支持(cmd键而不是ctrl)

js html监听ctrl v,如何使用JavaScript检测Ctrl+V,Ctrl+C?相关推荐

  1. js 监听 安卓事件_百行代码实现js事件监听实现跨页面数据传输

    百行代码实现js事件监听实现跨页面数据传输 使用场景 类似消息队列的使用场景,支持同页面和跨页面通信,发送消息和接收消息 技术原理 跨页面通信: 基于事件监听,通过监听 storage事件监听回调机制 ...

  2. html 监听input输入框的值,利用原生JS实时监听input框输入值

    利用原生JS实时监听input框输入值 原生JS中可以使用oninput,onpropertychange,onchange oninput,onpropertychange,onchange的用法 ...

  3. Vue.js:监听属性

    ylbtech-Vue.js:监听属性 1.返回顶部 1. Vue.js 监听属性 本章节,我们将为大家介绍 Vue.js 监听属性 watch,我们可以通过 watch 来响应数据的变化: 实例 & ...

  4. less.js插件监听

    <script>less.watch();</script> 在不手动刷新/重新加载页面会自动监听less的变化,页面做出相应的变化 . 写在这两行后面就好 了 <lin ...

  5. JS如何监听动画结束

    场景描述 在使用JS控制动画时一般需要在动画结束后执行回调去进行DOM的相关操作,所以需要监听动画结束进行回调.JS提供了以下事件用于监听动画的结束,简单总结学习下. CSS3动画监听事件 trans ...

  6. js如何监听元素事件是否被移除_JavaScript 监听元素是否进入/移出可视区域

    JavaScript 监听元素是否进入/移出可视区域 常规操作 防抖节流 IntersectionObserver 兼容的代码 常规操作 通常的做法是,监听srcoll事件,根据元素的offset来判 ...

  7. js微信监听返回_微信小程序(2)- 框架结构amp;运行环境

    一.小程序框架结构 小程序框架分场景获取.逻辑层和视图层 场景获取:场景值是用来描述用户进入小程序的路径,可以在小程序的生命周期onLaunch 或 onShow 里获取.也可以通过wx.getLau ...

  8. js如何监听元素事件是否被移除_JS移除事件监听的方法 .removeEventListener( )

    JS用addEventListener添加事件监听方法后,可以用removeEventListener来解除监听: element.removeEventListener(event, myFunct ...

  9. js如何监听元素事件是否被移除_js 监听事件的叠加和移除 -

    // 匿名函数事件无法移除 window.addEventListener("resize",function(){ alert(1) }) // 监听具名函数事件 functio ...

  10. [转] js对象监听实现

    前言 随着前端交互复杂度的提升,各类框架如angular,react,vue等也层出不穷,这些框架一个比较重要的技术点就是数据绑定.数据的监听有较多的实现方案,本文将粗略的描述一番,并对其中一个兼容性 ...

最新文章

  1. SAP PM入门系列20 - IH08 Equipment报表
  2. python not not()
  3. c语言链表把多少分以上打出来,大神帮我看一下怎么输入输出一个链表,我输入了但是没输出啊...
  4. [转]C++模板学习
  5. 科大星云诗社动态20211102
  6. 从Javascript单线程谈Event Loop
  7. 随机过程及其稳态stability
  8. LoadRunner常见问题
  9. 彻底扔掉PostMan了,这套国产替代方案是真的香…
  10. vantUI弹框组件 message文字,如何换行 ?
  11. 【LeetCode】【HOT】438. 找到字符串中所有字母异位词(滑动窗口)
  12. [leetcode]376. 摆动序列
  13. saltstack的探索-salt指定目标和分组
  14. Ray Dalio:经济机器是怎样运行的 (时长30分钟) 薛兆丰经济学讲义
  15. Flutter Connection to **** was not upgraded to websocket
  16. Android Camera HAL3 - MultiCamera-HALBufferManager
  17. 苹果电脑Mac很久不用,accountsd Messages 登陆钥匙串一直提示输入密码 错误
  18. NYOJ-845 无主之地1
  19. Java基础_集合_List与Set集合(笔记)
  20. Flutter ListView (动态)列表组件、水平列表组件、图标组件详解

热门文章

  1. State Threads之Co-routine的调度
  2. Java jstack 命令详解
  3. Kaldi 使用 DFSMN 训练语音模型
  4. docker与gosu,你的技术真的到天花板了吗
  5. 禁用Win10系统驱动程序强制签名的方法
  6. Floor Number
  7. GoogleCamera代码流程分析之相机切换
  8. python使用thrift2协议connect hbase
  9. 用C/C++写一个电子名片管理系统
  10. 搭建Redis单机版