JS 怎么监听复制事件 并获取复制内容 并修改复制文本内容

需求背景:

需要禁用部分文本内容的复制事件,并且在复制事件发生时,将复制的文本内容通过接口传给后端。

上代码:

javascript 复制代码
    // 使用Dom获取需要操作禁用时间的元素
    let element: any = document.getElementById('test1');

    // 为该元素添加 copy 事件监听器
    element.addEventListener('copy', function (event: any) {
      // 在这里编写你想要执行的操作
      console.log('复制事件被触发');

      var selection: any = window.getSelection();
      var selectedText = selection.toString();
      console.log(selectedText, '打印查看复制的文本内容')
      // 将selectedText调用接口传给后端

      // 可以通过 event.clipboardData 对象来设置剪贴板的数据
      event.clipboardData.setData('text/plain', '自定义的复制文本(替换复制的文本内容)');

      // 阻止默认的复制行为
      event.preventDefault();
    });
相关推荐
码艺-Alimjan12 小时前
Vue项目源码备份最佳实践:无视node_modules,打包体积仅2MB
前端·javascript·vue.js
隔窗听雨眠13 小时前
esbuild构建工具简介:重新定义前端构建速度的极速打包器
前端
蔓越莓13 小时前
Webpack 常用 Loader +手写Loader
前端·面试
潍坊老登14 小时前
写了一个某音自动刷视频,通过大模型分析视频主题的Android应用
前端
蔓越莓14 小时前
性能优化:webpack打包层面优化
前端·面试
TJHHH.14 小时前
XSS-labs-master
前端·web安全·xss
风月说与山鬼14 小时前
十二、Vue插件
前端·vue.js
xixiaoyunya14 小时前
JavaScript 异步编程全解析:从回调地狱到 async/await 的演进之路
开发语言·javascript·ecmascript
spter。14 小时前
一次 Redis SETNX 的小插曲,我重新理解了原子性
前端·redis·bootstrap