列表格式显示
广告招商中...... 联系方式!
私信 +好友
先前分享了通过Chrome扩展实现自动采集 magnet和ed2k地址的功能,参考:
中老年Java民工:自己动手快速实现可以自动采集magnet磁链和ed2k地址的chrome扩展
由于chrome扩展不能写入本地文件,于是当时简单使用navigator.clipboard的api进行复制,结果实际发现复制到剪贴板的操作不能成功,然后临时用alter进行弹框,再在弹框复制文本,结果又踩到坑了,文本太长的时候,复制出来的文本中间的内容自动变成了小数点表示省略,而且还没有换行符。
于是重新研究clipboard粘贴板复制功能的实现,在网上找了资料,资料基本都是过时的,所以也绕了弯路,因此记录一下过程。
clipboard.js 是一个用于实现剪贴板复制剪切功能的 js 组件。
下载clipboard.js的最新版本,得到 clipboard.js-2.0.11.zip .
来源: https://github.com/zenorocha/clipboard.js
"clipboardRead", //剪切板读权限 "clipboardWrite", //剪切板写权限
Chrome扩展权限明细可以参考:https://developer.chrome.com/docs/extensions/reference/permissions-list?hl=zh-cn
3.在扩展的popup.html页面引入js脚本
将clipboard.js复制到扩展的根目录下面,然后在html代码中加上依赖生命
<script type="text/javascript" src="clipboard.js"></script> <script type="text/javascript" src="popup.js"></script>
const textCopied = ClipboardJS.copy(str); //alert('复制了' + str);
首先参考下面这篇文章进行了尝试
在 Chrome 扩展中使用 clipboard.js 复制文本
结果首先发现 backgroud机制的page属性在 Chrome扩展V3版里不能使用了,
其次发现clipboard.js组件的类名已经改成了 ClipboardJS,
再是发现网上的示例都讲的在现有html页面控件上实现粘贴板复制功能,需要声明按钮和文本框这些,
而实际的操作不需要这些,具体的示例参考 clipboard.js-2.0.11\demo\text-programmatic-copy.html
然后就会发现使用超级简单!!!
示例的代码是:
<body> <!-- 1. Define some markup --> <button id="btn"> Copy </button> <!-- 2. Include library --> <script src="../dist/clipboard.min.js"></script> <!-- 3. Instantiate clipboard --> <script> var btn = document.querySelector('#btn'); btn.addEventListener('click', () => { const textCopied = ClipboardJS.copy('123'); console.log('copied!', textCopied); }) </script> </body>
插件改好代码之后,重新刷新加载进来,直接验证成功。
https://wenku.csdn.net/answer/7bdb18944089412b8ecbf816f2c22f2f
本页Html网址:/htmlsoft/619356.html
本页aspx网址:/soft.aspx?id=619356&bianhao=202406181528338220_66536&kind1=&kind2=
最后访问时间:
上一篇:html5滑块验证页面 网页滑块验证失败
下一篇:Selenium 系列篇(六):反反爬篇
增加