[WEB] 复制粘贴插件——clipboard.js的使用
作者:CC下载站 日期:2021-07-01 00:00:00 浏览:55 分类:站长帮
clipboard.js
为什么
将文本复制到剪贴板应该不难。它不应该需要几十个步骤来配置或加载数百 KB。但最重要的是,它不应该依赖于 Flash 或任何臃肿的框架。
这就是 clipboard.js 存在的原因。
安装
你可以在 npm 上得到它。
npm install clipboard --save
或者,如果您不喜欢包管理,只需 https://github.com/zenorocha/clipboard.js/archive/master.zip 。
设置
首先,包含位于dist文件夹中的脚本或从 第三方 CDN 提供商 加载它。
<script src="dist/clipboard.min.js"></script>
现在,您需要通过传递 DOM 选择器、HTML 元素或HTML 元素列表来实例化它。
new ClipboardJS('.btn');
在内部,我们需要获取与您的选择器匹配的所有元素,并为每个元素附加事件侦听器。但猜猜怎么了?如果您有数百个匹配项,则此操作会消耗大量内存。
出于这个原因,我们使用事件委托,将多个事件侦听器替换为单个侦听器。毕竟,#perfmatters。
用法
我们正在经历一个声明式的复兴,这就是为什么我们决定利用HTML5 数据属性来提高可用性。
从另一个元素复制文本
一个非常常见的用例是从另一个元素复制内容。您可以通过data-clipboard-target在触发器元素中添加属性来实现。
您在此属性中包含的值需要与另一个元素选择器相匹配。
<!-- Target -->
<input id="foo" value="https://github.com/zenorocha/clipboard.js.git">
<!-- Trigger -->
<button class="btn" data-clipboard-target="#foo">
<img src="assets/clippy.svg" >
</button>
从另一个元素剪切文本
此外,您可以定义一个data-clipboard-action属性来指定您是否想要copy或cut内容。
如果省略此属性,copy将默认使用。
<!-- Target -->
<textarea id="bar">Mussum ipsum cacilds...</textarea>
<!-- Trigger -->
<button class="btn" data-clipboard-action="cut" data-clipboard-target="#bar">
Cut to clipboard
</button>
正如您所料,该cut操作仅适用于<input>或<textarea>元素。
从属性复制文本
事实是,您甚至不需要另一个元素来复制其内容。您可以只data-clipboard-text在触发器元素中包含一个属性。
<!-- Trigger -->
<button class="btn" data-clipboard-text="Just because you can doesn't mean you should — clipboard.js">
Copy to clipboard
</button>
活动
在某些情况下,您希望显示一些用户反馈或捕获复制/剪切操作后选择的内容。
这就是为什么我们会触发诸如success和 之类的自定义事件以error供您聆听和实现您的自定义逻辑。
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);
});
高级用法
如果您不想修改 HTML,可以使用非常方便的命令式 API。你需要做的就是声明一个函数,做你的事情,然后返回一个值。
例如,如果您想动态设置 a target,则需要返回一个 Node.js 。
new ClipboardJS('.btn', {
target: function(trigger) {
return trigger.nextElementSibling;
}
});
如果您想动态设置 a text,您将返回一个字符串。
new ClipboardJS('.btn', {
text: function(trigger) {
return trigger.getAttribute('aria-label');
}
});
要在 Bootstrap Modals 或任何其他更改焦点的库中使用,您需要将焦点元素设置为container值。
new ClipboardJS('.btn', {
container: document.getElementById('modal')
});
此外,如果您正在使用单页应用程序,您可能希望更精确地管理 DOM 的生命周期。以下是清理我们创建的事件和对象的方法。
var clipboard = new ClipboardJS('.btn');
clipboard.destroy();
猜你还喜欢
- 03-29 [环境测试] Hexo部署GitHub Pages
- 03-22 [源码设置] 如何设置Xiuno BBS URL-Rewrite(伪静态设定)
- 03-06 [建站交流] PicGo + smms 构建图床
- 11-18 [emlog技巧] Emlog非插件显示评论者IP属地
- 11-09 [网站维护] WordPress 后台速度慢?加快仪表板速度的 15 种方法
- 11-09 [WordPress插件] 10 个最好用的 WordPress 聊天机器人插件(免费和付费)
- 11-09 [WordPress开发] 探索 WordPress 6.3 中的增强样板(Patterns)
- 11-09 [网站维护] 无需插件即可优化 WordPress 速度的 12 种策略
- 11-09 [网站安全] WordPress 安全统计:WordPress 到底有多安全?
- 09-20 [jsp技术] JSP ssm 特殊人群防走失系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计
- 09-15 [Lightsail容器] AWS Lightsail VPS:一种在云中运行容器的简单方法
- 07-28 [运维笔记] 解决网站出现"SSL_ERROR_RX_RECORD_TOO_LONG"问题
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[资料课程] 适合3-7岁学前幼小衔接 《22天搞定拼音》,认、读、拼、写
[课程] 衣之镖-- 《辅行诀五脏用药法要》研究 线上54讲课程视频
[课程] 12节在家也能练出性感蜜桃臀,让臀部变得圆、紧、翘
[游戏娱乐] 《灵魂石幸存者》v10g中文版
[跨境电商] TikTok中视频课程30天线上陪跑
[电影] [摩登笑探 冇面俾].1995.HDTV1080i.国语中字
[游戏娱乐] 《阿斯特赖亚》v1.1.42中文版
[游戏娱乐] 《消逝的光芒:仇恨》中文版
[电影] 非常偵探/The Private Eye Blues 1994
[摄影] 让手机秒变单反的手机拍摄好物
[资料] [大学期末救急课] 猴博士+高斯课堂+斐多课堂,全集视频合集
[云资源] 价值2万元的老男孩Python教程
[书库] 史上最全摄影书推荐(附700本PDF版打包下载)
[云资源] 花了一千多元买的私人健身教程
[下载工具] Internet Download Manager 6.42.7 (IDM)
[影视] 灌篮高手 WEB-DL版下载/Slam Dunk/スラムダンク/灌篮高手:THE FIRST/灌篮高手电影版 2022 The First Slam Dunk 61.35G
[安卓软件] 酷我音乐APP_v10.7.6.4 去广告破解豪华VIP版
[即时通讯] 微信PC版WeChat 3.9.9.43 多开防撤回绿色版
[安卓软件] Solid Explorer文件管理器APP 2.8.38 破解版
[浏览器] Google Chrome v123.0.6312.59便携增强版
[云资源] 价值2万元的老男孩Python教程
[影视] 灌篮高手 WEB-DL版下载/Slam Dunk/スラムダンク/灌篮高手:THE FIRST/灌篮高手电影版 2022 The First Slam Dunk 61.35G
[云资源] 花了一千多元买的私人健身教程
[书库] 史上最全摄影书推荐(附700本PDF版打包下载)
[动画] 北斗神拳(1984) [两季合集] [MKV]
[资料] 抗战阵亡将士资料+续编
[电视剧] 三体 (2024) 全8集 网飞版本 中文字幕 合集
[纪录片] 河西走廊【10集 国语 中文字幕 1080P 10.8G MP4】
[电影] 2024年喜剧片·热辣滚烫 [mp4]
[影视] 铁爪 WEB-DL版下载 2023 The Iron Claw 23.48G
- 最新评论
-
杂物房内的旧档资源不保证有效CC下载站 评论于:05-14 不能**123 评论于:05-14 我想看看mw2ddyy 评论于:04-26 好东西阿zfy123123 评论于:04-18 谢谢楼主xiaoqi 评论于:04-12 勿在线解压,勿手机解压,请在电脑上用最新款压缩软件解压!推荐360压缩或者好压CC下载站 评论于:04-10 无法解压啊,客服能不能给个解压教程ravengrey 评论于:04-10 谢谢支持!!CC下载站 评论于:03-26 很棒的资源,感谢分享云体风身 评论于:03-26 感谢分享,好东西云体风身 评论于:03-26
- 热门tag