js点击复制文本_js实现复制功能

js点击复制文本_js实现复制功能,第1张

js点击复制文本_js实现复制功能 介绍clipboard.js是一款不依赖flash或任何重量级框架的粘贴复制插件,并且它没有任何非常复杂的配置,这也是它存在的原因。


安装通过npm安装(或者直接下载js文件引入)npm install clipboard –save2.引入js<script src=”dist/clipboard.min.js”></script>//官网提供了下载地址,也可以使用免费的cdn使用示例<!DOCTYPE html><html class="no-js"> <head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <title></title> <meta name="description" content="" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link href="https://cdn.bootcss.com/twitter-bootstrap/3.4.1/css/bootstrap.min.css" rel="stylesheet" /> </head> <body> <div class="input-group" style="width: 600px;margin:200px"> <input type="text" class="form-control" id="foo" value="https://github.com/zenorocha/clipboard.js.git" placeholder="Amount" /> <div class="btn input-group-addon" data-clipboard-target="#foo">复制</div> </div> <script src="https://cdn.jsdelivr.net/npm/clipboard@2/dist/clipboard.min.js"></script> <script> new ClipboardJS(".btn"); </script> </body></html>如图书最简单的例子,单机复制按钮即可自动复制文本框的内容换成下面就会变成剪切,主要是以下属性data-clipboard-action=”cut”<div class="input-group" style="width: 600px;margin:200px"> <input type="text" class="form-control" id="foo" value="https://github.com/zenorocha/clipboard.js.git" placeholder="Amount" /> <div class="btn input-group-addon" data-clipboard-target="#foo" data-clipboard-action="cut">剪切</div> </div> <script src="https://cdn.jsdelivr.net/npm/clipboard@2/dist/clipboard.min.js"></script> <script> new ClipboardJS(".btn"); </script>剪切 *** 作仅适用于<input>或<textarea>元素或者这样,直接复制 data-clipboard-text属性的内容<button class="btn" data-clipboard-text="要复制的内容"> 复制</button>
事件监听,可以打开控制台自行尝试var clipboard = new ClipboardJS('.btn');clipboard.on('success', function(e) { console.info('Action:', e.action); console.info('Text:', e.text); console.info('Trigger:', e.trigger); e.clearSelection();});clipboard.on('error', function(e) { console.error('Action:', e.action); console.error('Trigger:', e.trigger);});高级用法动态绑定new ClipboardJS('.btn', { target: function(trigger) { return trigger.nextElementSibling; }});动态赋值new ClipboardJS('.btn', { text: function(trigger) { return trigger.getAttribute('aria-label'); }});要在Bootstrap Modals中使用或与任何其他更改焦点的库一起使用,您需要将focus元素设置为container值new ClipboardJS('.btn', { container: document.getElementById('modal')});更好的管理单页面的DOM生命周期var clipboard = new ClipboardJS('.btn');clipboard.destroy();兼容性备注如果需要支持更低版本的浏览器,可以参考官网的介绍,它能够优雅的降级提供Chrome和Firefox的扩展一个浏览器扩展,为GitHub,MDN,Gist,StackOverflow,StackExchange,npm甚至Medium中的每个代码块添加“复制到剪贴板”按钮。

需要的可以私信或者前往扩展中心自行下载。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/663983.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-18
下一篇 2022-04-18

发表评论

登录后才能评论

评论列表(0条)

保存