浏览器家园

TAG标签|网站导航| 手机访问:m.liulanqi.com

当前位置:首页ChromeChrome开发 → Chrome浏览器读写系统剪切板

Chrome浏览器读写系统剪切板

时间:2023-06-27 11:20:02来源:整理作者:浏览器知识手机版

IE浏览器支持直接读写剪切板内容:

window.clipboardData.clearData();  
window.clipboardData.setData('Text', 'abcd');

但是这种方式不安全,很容易泄露用户的隐私,所以现在浏览器如chrome都不支持这种方式了。

读取系统剪切板

查了很多资料,如果是粘贴系统剪切板内容,前提是先去读取系统剪切板内容。

获取事件对象:粘贴事件提供了一个clipboardData的属性,如果该属性有items属性,那么就可以查看items中是否有图片类型的数据了。但是不支持文件夹复制图片word等文件,可以赋值文本文字内容和截图内容。

复制代码
         //覆盖浏览器粘贴事件
        document.addEventListener('paste', function (e) {
            var clipboardData = e.clipboardData;
            if (!(clipboardData && clipboardData.items)) {//是否有粘贴内容
                return;
            }
            for (var i = 0, len = clipboardData.items.length; i < len; i++) {
                var item = clipboardData.items[i];
                if (item.kind === "string" && item.type == "text/plain") {
                    item.getAsString(function (str) {
                        // str 是获取到的字符串,创建文本框
                        //处理粘贴的文字内容
                    })
                } else if (item.kind === "file") {//file 一般是各种截图base64数据
                    var pasteFile = item.getAsFile();
                    // pasteFile就是获取到的文件
                    var reader = new FileReader();
                    reader.onload = function (event) {
                        var base64Img = event.target.result;
                    }; // data url  
                    reader.readAsDataURL(pasteFile);
                }
                var copy_content = e.clipboardData.getData('text/plain');
            }
        })
复制代码

写入系统剪切板

查找到的资源都是在事件对象中直接setData,但是实际测试是没有效果的。

e.clipboardData.setData('text/plain', defaultText);

以下提供两种实测有效的设置方式:

1)监听copy事件,触发copy命令

ctrl+C监听按键后如果直接设置event.clipboardData.setData 是无法生效的,必须通过触发copy命令后写入clipboardData。

但是要记得removeEventListener,否则影响自己应用其他地方的copy。

       document.addEventListener("paste", function (e) {
              console.log(e.clipboardData.getData("text"));
          });
          document.onkeydown = function (e) {
              if (e.ctrlKey && e.keyCode == 67) {//ctrl+C
                  function handler(event) {
                      event.clipboardData.setData('text/plain', "自定义复制内容");
                      document.removeEventListener('copy', handler, true);
                      event.preventDefault();
                 }
                 document.addEventListener('copy', handler, true);
                 document.execCommand('copy');
             }
         }

2)通过将需要复制的内容赋值到文本中,将文本框内容选中,执行copy命令

  <textarea readonly id="copy_text" style="position:absolute;left:-9999px"></textarea>

 

          //复制  
         document.onkeydown = function (e) {
              if (e.ctrlKey && e.keyCode == 86) {//ctrl+V
                  var cloneActiveElement = "需要复制的内容";
                  var copyText = document.getElementById("copy_text");
                  copyText.innerHTML = cloneActiveElement;
                  copyText.readOnly = false;
                  copyText.select();
                  copyText.setSelectionRange(0, copyText.value.length);
                 document.execCommand("copy");
                 copyText.readOnly = true;
             }

 

参考:

http://www.liulanqi.cc/13512.html
http://www.liulanqi.cc/13511.html
http://www.liulanqi.cc/13508.html

相关文章

  • 鸥朋浏览器,快速浏览网页,选择鸥朋浏览器!

    引言随着互联网技术的不断发展,人们浏览网页的习惯也在不断变化。在众多浏览器中,鸥朋浏览器受到越来越多的用户青睐。本文将介绍鸥朋浏览器的特点和优势,帮助大家更好地利用这一工具。2.鸥朋浏览器的特点鸥朋浏览器是一款专注于个性化定制的浏览器,在功能和用户体验上具有独特的特点。-高速浏览:鸥朋浏览器基于谷歌浏览器内核,拥有高速的页面加载速度和稳定性,不卡顿不崩溃,用户体验非常好。-安全保护:鸥朋浏览器在用户隐私保护方面非常重视,支持防止恶意插件、广告拦截、隐身模式等多项安全保护功能。-多样化定制:鸥朋浏览器提..
  • 电脑图片浏览器下载,电脑图片查看器免费下载,方便快捷的图片管理工具

    电脑图片浏览器下载电脑是我们最常用的工具之一,对于爱好摄影、美图制作的人来说,图片管理工具是非常必要的。在电脑上浏览图片时,我们需要一个好用的图片浏览器。在网上搜索,可以找到各种各样的图片浏览器。然而,为了避免下载带病毒或虚假的软件,我们需要选择安全可信的下载源,并仔细查看软件版本和说明以确保所下载的软件适用于我们的操作系统。2.电脑图片查看器免费下载有些好的图片浏览器需要购买才能使用。但在我们寻找图片查看器时,我们可以选择一些免费软件,例如GooglePhotos、Picasa等。这些图片软件带有许..

Copyright 2019-2029 www.liulanqi.com 【浏览器家园】 版权所有

浏览器家园_下载浏览器就到浏览器家园 | 专注MAC浏览器和Windows浏览器下载和使用介绍

声明: 所有软件和文章收集整理来自互联网 如有异议 请与本站联系 本站为非赢利性网站 不接受任何赞助和广告