最近,做了一个切图的小项目

主要内容是微信号的推广页面,上面会有精美的图片和微信号:)

点击按钮,会复制到粘贴板上,自己去微信里面粘贴搜索:),懒人会进行一系列复杂操作么,不看好

首先,百度了一下,看中clipboard库,纯js兼容手机端,好激动:)

clibboard的GitHub地址,使用非常简单,自己看demo目录的内容,源码看的方,还是不知道如何实现的,求教

主要思路,就点击按钮,自动将文本复制到剪贴板。

选择使用其中的function,可以使用ajax从服务端获取微信号

官网的方案

1 new Clipboard('.btn', {
2     text: function(trigger) {
3         return trigger.getAttribute('aria-label');
4     }
5 });

Now, you need to instantiate it by passing a DOM selector, HTML element, or list of HTML elements.

可以选择三种方式,来确定点击哪儿触发点击。

根据业务需要,使用zepto来获取json

 1 // 添加获取json
 2 Zepto(function ($) {
 3     $.getJSON('account/data.json', '?time='+new Date().getTime(), function (data) {
 4         let name = data.name;
 5
 6         document.getElementById("num").innerHTML = name;
 7
 8         var clipboard = new Clipboard('.btn', {
 9             text: () => name
10         });
11
12         clipboard.on('success', (e) => {console.log(e)
13             alert('微信号已复制,请打开微信,点击右上角+号,选择添加朋友,粘贴搜索')});
14
15         clipboard.on('error', (e) => console.log(e));
16     });

效果如下:

发现点击,有弹窗,仔细观察会发现,在body底部出现了一串代码,hack方式,隐藏文本

下面是简单的html,有兴趣的同学可以自己试试

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4   <meta charset="UTF-8">
 5   <title>测试</title>
 6   <script src="dist/clipboard.min.js"></script>
 7   <script src="dist/zepto.min.js"></script>
 8   <script src="static/js/changeAccount.js"></script>
 9   <style>
10     .bg{11       width:100%;
12       height: 1500px;
13       background-color: #ccc;
14       text-justify: inter-cluster;
15       font-size: 100px;
16     }
17   </style>
18 </head>
19 <body>
20 <div class="btn">
21   <div class="bg">
22     背景
23   </div>
24   <p id="num"></p>
25 </div>
26 </body>
27 </html>

View Code

在手机点击无任何效果,这个大坑踩了好久才知道,

具体怎么踩得不好意思说了,取巧终究还是要吃亏,,,

仔细地又看了一遍demo,发现多数都是<button class="btn">

索性照着官方来,

<button class="bg">  背景</button>

哎,心累,早这样不就好了,至于为什么刚开始不使用button,都是设计稿的锅,竟然没有按钮,还要

能点击复制,

页面有很多背景图片和内容,初步想法是,将按钮设置全屏,z-index=-1;

发现,红,绿区域点击无效,灰色区域可以复制,此时确信了,手机端点击是无法穿透的,只能获取最上面一层

改变一下思路,将按钮放在最上一层,不就可以了吗,你想到什么了

1 z-index:999;
2 opacity:0;

View Code

最后,想看完整项目的,请移步个人GitHub

转载于:https://www.cnblogs.com/shahramLu/p/6501963.html

解决clipboard手机端无法复制的一种思路相关推荐

  1. 浏览器复制粘贴以及手机端webview复制粘贴

    一.浏览器赋值粘贴 1.document.execCommand 这部分参考文档: https://developer.mozilla.org/zh-CN/docs/Web/API/Document/ ...

  2. html手机自动放大,解决HTML5手机端页面缩放的问题

    通常在写HTML5手机端页面的时候,我们会发现页面所显示元素的比例不正确,那此时我们需要添加的就是: 或者是 那么我们来对这句话解释一下就是: viewport : 表示的是显示窗口: width=d ...

  3. html页面手机自动缩放,解决HTML5手机端页面缩放的问题

    通常在写HTML5手机端页面的时候,我们会发现页面所显示元素的比例不正确,那此时我们需要添加的就是: 或者是 那么我们来对这句话解释一下就是: viewport : 表示的是显示窗口: width=d ...

  4. html手机端一键复制,一键粘贴复制功能-兼容IE9+及其移动端-clipboard.js

    使用系统提供的剪贴板是一项基本的IT技能.作为一个开发者,相信你已经知道使用 Ctrl/Cmd+A, Ctrl/Cmd+C 以及 Ctrl/Cmd+V 组合键就能快捷地进行选中.复制.粘贴.但对于普通 ...

  5. 手机端实现复制链接功能

    网上试了各种插件 总是不能兼容安卓和苹果的各种浏览器 目前兼容性不是很好 经测试只支持安卓HTML5的浏览器 后续如果有解决办法 又继续更新 _url : 要复制的链接 select_txt: 隐藏的 ...

  6. 解决html5手机端滑动卡顿的现象

    项目是混合开发,原生安卓和ios里面内嵌h5页面,在安卓里面滑动就不会卡顿,但是iso里面就卡卡卡,于是试便了全网,找到了这个解决办法,大家可以试试. 直接全局增加css样式就行 * {-webkit ...

  7. uc浏览器手机端禁用复制

    div { pointer-events: none;}

  8. 车架识别手机端只是一种?

    车架识别手机端只是一种? 您在购车时最关注的的是什么?性能.外观.内饰.或者看看发动机,助力油什么的. 其实您错了,当然以上也是不可忽略的,只是有一个关注点比这些更重要,就是VIN码. 如下图这串由数 ...

  9. 《JS实现复制内容到剪贴板功能,可兼容所有PC浏览器,不兼容手机端》

    前记:本来原生的JS是有提供一个函数来实现这个功能(window.clipboardData),但是很遗憾,这个函数仅仅支持IE和FF浏览器,所以基本用处不大.下边介绍的是一个第三方插件库(ZeroC ...

  10. 手机端网页中图片之间出现白线的解决方法

    手机端网页中图片之间出现白线的解决方法 参考文章: (1)手机端网页中图片之间出现白线的解决方法 (2)https://www.cnblogs.com/syzdidi/p/9686463.html 备 ...

最新文章

  1. 绘制E—R图(详细)
  2. Calling handler.OnEndpointsUpdate报错原因
  3. Android Studio 小提示,新建Activity
  4. aqlserver实用程序_sqlserver命令提示实用工具的介绍
  5. DW里面html鼠标点击特效,dw制作鼠标经过时图像放大鼠标离开图像回原形效果
  6. 英文标点符号翻译大全
  7. go设置linux ip,设置linux虚拟机的静态ip-Go语言中文社区
  8. Bashtop – Linux的资源监视工具(亲测)
  9. 2 . 8 注释和嵌入文档
  10. android 丢包率测试工具,android的ping的实现丢包率的获取
  11. “坦克大战”小游戏(C语言)源代码及其详解注释
  12. 玩和平精英跟刺激战场国际服都被吊打?网友:你还可以玩荒野行动
  13. 基于PHP的编程类学习网站设计与实现
  14. 国产CSM32RV20是基于RISC-V核的低功耗MCU芯片
  15. 【论文笔记——DIM】Learning Deep Representations By Mutual Information Estimation and Maximization
  16. 克服神经网络中的灾难性遗忘(EWC):Overcoming catastrophic forgetting inneural networks
  17. Android异步和同步的区别
  18. 如何解压 .lz4 后缀文件
  19. 利用UE4深度图制作空间开敞度可视化工具
  20. python中查找文件当前位置的命令为tell()_Python文件处理之seek(), tell()用法...

热门文章

  1. 如何读出烧录程序.bin的数据_如何改变程序搜索数据的方式?使用Redis进行搜索...
  2. 看雪 好文 汇集贴(持续更新)
  3. iOS逆向工具-Theos
  4. 阿里巴巴获机器视觉顶级会议ACM MM2020主办权
  5. LeetCode 387:first-unique-character-in-a-string
  6. 深入了解一下PYTHON中关于SOCKETSERVER的模块-A
  7. 第六周--------职业规划------正确的选择让你少奋斗十年
  8. C#找出接口的所有实现类并遍历执行这些类的公共方法
  9. wlst启动weblogic
  10. 会话控制_2-5 编程练习