javaScript完成拷贝作用的方式:1、根据“document.execCommand('copy')”方式;2、根据ClipboardJS来完成具体内容的拷贝。
文中实际操作自然环境:windows7系统软件、javascript1.8.5版、Dell G3电脑上。
javaScript如何完成拷贝作用?
js完成拷贝的二种方式
一、导言
页面必须拷贝作用,因此就写了一个做为简易纪录
二、方式、建议第二种。
1、第一种方式
1)、根据 document.execCommand('copy')
2)、前端代码如下所示:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>constructor-nodelist</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="https://cdn.bootcss.com/sweetalert/1.1.3/sweetalert.min.css"/> </head> <body> <button onclick="copyText('copy_file')">点此拷贝</button> <a id="copy_file" href="拷贝具体内容" ></a> <script type="text/javascript" src="https://cdn.bootcss.com/sweetalert/1.1.3/sweetalert.min.js"></script> <script> function copyText(str_file) { const btn = document.querySelector('.' str_file); var copy_val = document.getElementById(str_file) var copy_file = copy_val.getAttribute("href"); btn.addEventListener('click',() => { const input = document.createElement('input'); document.body.appendChild(input); input.setAttribute('value', copy_file); input.select(); if (document.execCommand('copy')) { document.execCommand('copy'); swal("复制成功!","success"); } document.body.removeChild(input); }) } </script> </body>
3)、汇总:主要是根据 class和id 来拷贝 a标签中的 href,把拷贝好的具体内容放进 转化成的input标识中,随后拷贝完毕把 input标识给remove,这一你拷贝具体内容自主充分发挥,和改动 js。
4)、问题:第一次点一下不起效,必须点一下2次,临时不处理
2、第二种方式
1)、根据 ClipboardJS 来完成 具体内容的拷贝,建议这一
2)、git详细地址:clipboardjs(https://clipboardjs.com/)
3)、前端代码如下所示:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Title</title> <!-- 请自己去git新项目在线下载 js--> <script src="./clipboard.min.js"></script> <link rel="stylesheet" href="https://cdn.bootcss.com/sweetalert/1.1.3/sweetalert.min.css"/> <script type="text/javascript" src="https://cdn.bootcss.com/sweetalert/1.1.3/sweetalert.min.js"></script> </head> <body> <button id="btn" data-clipboard-text="str_555" onclick="copyText()"> <span>Copy</span> </button> </body> </html> <script> function copyText() { var btn = document.getElementById('btn'); console.log(btn); var clipboard = new ClipboardJS(btn); <!-- var clipboard = new ClipboardJS(btn, {--> <!-- container: document.getElementById('btn')--> <!-- });--> 假如你的新项目是 bootstrap架构,请应用这一 clipboard.on('success', function(e) { console.log(e); swal("复制成功!","success"); clipboard.destroy(); }); clipboard.on('error', function(e) { console.log(e); swal("拷贝不成功","error"); clipboard.destroy(); }); } </script>
3)、汇总:请一定要认真阅读 文本文档。这一新项目或是十分庞大的,极力推荐这一。
4)、问题:也是碰到了 第一次拷贝不起效的问题,临时不解决了。
三、汇总
1、都遇上了 第一次拷贝不起效的问题,后面处理把,都使用了 sweetalert 。
2、本人都只在 Google和火狐浏览器试验了,都能够用,假如别的浏览器版本不能用,请及时查看别的文章内容,热烈欢迎沟通交流、纠正。
建议学习培训:《javascript基础教程》
以上便是javaScript如何完成拷贝作用的详尽具体内容,大量请关心自学java网其他相关文章!
WWW.lllT.neT声明:有的资源来自网络转载,版权归原作者所有,如有侵犯到您的权益请联系邮箱:our333@126.com我们将配合处理!
原文地址:javaScript如何完成拷贝作用发布于2021-12-13 15:45:01