iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >clipboard.js使用总结
  • 235
分享到

clipboard.js使用总结

2024-04-02 19:04:59 235人浏览 薄情痞子
摘要

目录(1)介绍: (2)clipboard复印内容的方式有 (3)Function操作有两种: (4)通过属性返回复印的内容 (5)函数和属性的兼容方式 (1)介绍: clipbo

(1)介绍:

clipboard.js是一款轻量级的实现复制文本到剪贴板功能的javascript插件。通过该插件可以将输入框,文本域,DIV元素中的文本等文本内容复制到剪贴板中

clipboard.js支持主流的浏览器:chrome 42+; Firefox 41+; IE 9+; opera 29+; Safari 10+;

(2)clipboard复印内容的方式有

从target复印目标内容
通过function 要复印的内容
通过属性返回复印的内容
target复印目标内容,这里不说,就说一下function和属性的操作。

(3)Function操作有两种:

第一种:

通过target的function复印内容
通过target指定要复印的节点,这里返回舒值是‘hello'


   <button class="btn">Copy_target</button>
   <div>hello</div>

   <script>
   var clipboard = new Clipboard('.btn', {
   // 通过target指定要复印的节点
       target: function() {
                  return document.querySelector('div');
             }
   });

   clipboard.on('success', function(e) {
       console.log(e);
   });

   clipboard.on('error', function(e) {
       console.log(e);
   });
   </script>

第二种:

通过text的function复印内容
text的function指定的复印内容,这里返回‘to be or not to be'


<button class="btn">Copy</button>
<script>
   var clipboard = new Clipboard('.btn', {
   // 点击copy按钮,直接通过text直接返回复印的内容
       text: function() {
           return 'to be or not to be';
       }
   });

   clipboard.on('success', function(e) {
       console.log(e);
   });

   clipboard.on('error', function(e) {
       console.log(e);
});

(4)通过属性返回复印的内容

第一种: 单节点

通过id指定节点对象,并做为参数传送给Clipboard。这里的返回值的内容是data-clipboard-text的内容


// 通过id获取复制data-clipboard-text的内容 
<div id="btn" data-clipboard-text="1">
        <span>Copy</span>
</div>
 
<script>
    var btn = document.getElementById('btn');
    var clipboard = new Clipboard(btn);
 
    clipboard.on('success', function(e) {
        console.log(e);
    });
 
    clipboard.on('error', function(e) {
        console.log(e);
    });
</script>

第二种: 多节点

通过class获取所有button按钮,并做为参数传送给Clipboard。每个按钮被点击时,返回值的内容是其对应的data-clipboard-text的内容,分别是1,2,3


//   通过class注册多个button,获取data-clipboard-text的值
<button class="btn" data-clipboard-text="1">Copy</button>
    <button class="btn" data-clipboard-text="2">Copy</button>
    <button class="btn" data-clipboard-text="3">Copy</button>
 <script>
    var clipboard = new Clipboard('.btn');
 
    clipboard.on('success', function(e) {
        console.log(e);
    });
 
    clipboard.on('error', function(e) {
        console.log(e);
    });
    </script>

(5)函数和属性的兼容方式

函数:


//ClipboardJS.isSupported()  //--------这句为:是否兼容
var clipboard = new Clipboard('.btn');
//优雅降级:safari 版本号>=10,提示复制成功;否则提示需在文字选中后,手动选择“拷贝”进行复制
clipboard.on('success', function(e) {
    alert('复制成功!')
    e.clearSelection();
});
clipboard.on('error', function(e) {
    alert('请选择“拷贝”进行复制!')
//尝试去掉alert,能弹出系统的“拷贝”工具,但是需要点击两次按钮才能弹出,具体原因还不清楚,参考上图。有人说可以试一下在触发的地方写一个空点击事件, οnclick="" 因为iOS不单纯支持on事件
}); 

属性:


<img
   src="../../../../assets/images/zuop_award/copy_link.png"
      @click="copy"
      data-clipboard-action="copy"
      class="email"
      :data-clipboard-text="'mayouchen@csdn.com'"
    /> 

-------------------
  copy() {
     var clipboard = new Clipboard(".email")
     // console.log(clipboard);
     clipboard.on("success", e => {
       // console.log("复制成功", e);
       Toast({
         message: "复制成功"
       })
       // 释放内存
       clipboard.destroy()
     })
     clipboard.on("error", e => {
       // 不支持复制
       Toast({
         message: "手机权限不支持复制功能"
       })
       console.log("该浏览器不支持自动复制")
       // 释放内存
       clipboard.destroy()
     })
   }

到此这篇关于clipboard.js使用总结的文章就介绍到这了,更多相关clipboard.js使用内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: clipboard.js使用总结

本文链接: https://www.lsjlt.com/news/157087.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • clipboard.js使用总结
    目录(1)介绍: (2)clipboard复印内容的方式有 (3)Function操作有两种: (4)通过属性返回复印的内容 (5)函数和属性的兼容方式 (1)介绍: clipbo...
    99+
    2022-11-12
  • w3m使用总结
    ...
    99+
    2023-01-31
    w3m
  • redis 使用总结
    最近一段时间与redis接触比较频繁。发现有些东西还是工作中经常会用到的,自己也花了点时间巩固下。本篇文章主要是以总结性的方式梳理,因为redis的主题很大,任何一个技术点展开都是几篇文章的量。也可以说这篇...
    99+
    2022-10-18
  • sqlite3使用总结
           OS X自从10.4后把SQLite这套相当出名的数据库软件,放进了作业系统工具集里。OS X包装的是第三版的SQLite,又称SQLite3。这套软件有几个特色:软件属于公共财(public domain),SQLite可说...
    99+
    2023-01-31
  • BigDecimal使用总结
    对于超过16位的大型数字,需要用到Java在java.math包中提供的API类BigDecimal,而且也不是传统的+-*/,而是调用对应的方法。 1.创建对象 使用new的方式创建BigDecim...
    99+
    2023-09-03
    java BigDecimal
  • Android ProgressDialog使用总结
    ProgressDialog 继承自AlertDialog,AlertDialog继承自Dialog,实现DialogInterface接口。 ProgressDialog的创...
    99+
    2022-06-06
    progressdialog Android
  • Java ArrayList使用总结
    目录类图源码解析新增和扩容实现扩容的本质删除总结提起ArrayList,相信很多小伙伴都用过,而且还不少用。但在几年之前,我在一场面试中,面试官要求说出ArrayList的扩容机制。...
    99+
    2022-11-12
  • aws S3使用总结
      最近公司要上海外项目,要用到亚马逊。可把我折腾的够呛。好多坑。不得不说亚马逊的东西挺好最起码服务器性能比阿里云强多了。但在人性化这一点做的不如阿里。反正是各有千秋  这里说一下我的案例:要把图片cdn上的图片传到S3。这里我试了很多方法...
    99+
    2023-01-31
    aws
  • js剪切板Clipboard.js 使用方法是什么
    本篇文章为大家展示了js剪切板Clipboard.js 使用方法是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。js剪切板Clipboard.js clipboard.js是一个用来设...
    99+
    2023-06-04
  • 使用clipboard.js库实现复制剪切功能
    项目地址:https://github.com/zenorocha/clipboard.js 现代化的“复制到剪切板”插件。不包含 Flash。gzip 压缩...
    99+
    2022-11-13
  • MySQL 使用规范总结
    1.必须使用InnoDB存储引擎 有更好的CPU和IO性能,更好的备份和锁表机制,提高统计和调试效率。 另外,作为一 个系统,InnoDB支持多种关键功能,其中最重要的是事务日志和行级锁。事务日志记录真正的数据库事务...
    99+
    2022-05-24
    MySQL 使用规范 MySQL 规范
  • Android ViewPager 的使用总结
    在一个窗口里面添加tab便签,完成便签切换来实现页面的切换,这样的好处是可以在同一个窗口里面有多个页面,这些页面共享同一个窗口的资源,同使用多个窗口来实现这个功能来得更加流畅!...
    99+
    2022-06-06
    viewpager Android
  • JavaScript JSON.stringify()的使用总结
    目录一、使用方法 1、基本用法 2、第二个参数--过滤器 3、第三个参数--字符串缩进 4、toJSON()方法--自定义JSON序列化 二、使用场景 1、判断数组是否包含某对象,或...
    99+
    2022-11-12
  • Android ViewModel的使用总结
    目录基本使用 MainRepositoryMainViewModelMainActivityViewModel 相关问题是高频面试题。主要源于它是 MVVM 架构模式的重要组件,并且...
    99+
    2022-11-12
  • javaspi最全使用总结
    目录前言一、JDK中SPI的使用规范案例展示SPI优点SPI缺点SPI机制在实际生产中的一个应用二、DUbbo 中SPI的使用Dubbo 的 SPI 举例三、springboot 中...
    99+
    2022-11-13
  • MongoDB使用场景总结
    很多人比较关心 MongoDB 的适用场景,也有用户在话题里分享了自己的业务场景,比如 案例1 用在应用服务器的日志记录,查找起来比文本灵活,导出也很方便。也是给应用练手,从外围系统...
    99+
    2022-11-13
  • pytest使用问题总结
    问题一、AttributeError: module 'pytest' has no attribute 'allure'解决方法:pip3 uninstall pytest-allure-adaptorpip3 install allur...
    99+
    2023-01-31
    pytest
  • adb 使用命令总结
    adb修改系统属性实现: 方法一: adb root 2.adb remount 3.adb shell 4.busybox vi system/build.prop (执行上述命令后会通过vi打...
    99+
    2023-08-31
    adb iot 经验分享 adb指令
  • vsftpd安装使用总结
    在安装盘中找到vsftpd的rpm安装文件,我的是4个disk,在disk1中.1.安装vsftpd:#rpm -ivh vsftpd*.rpm配置vsftpd:/etc/vsftpd/vsftpd.conf可以配置用户的初始路径,权限等....
    99+
    2023-06-04
  • android Retrofit2+okHttp3使用总结
    使用前准备Build.gradle文件配置dependencies配置compile 'com.squareup.retrofit2:retrofit:2.0.0'compile 'com.squareup.retrofit2:conver...
    99+
    2023-05-31
    okhttp retrofit roi
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作