小程序中实现一键复制长段文本内容

做小程序开发,就知道其实小程序是有限制的,在小程序内无法打开网址,只允许从一个小程序跳到另一个小程序。

今天主要不是说小程序的限制,我们来看一下,如果网址不能打开的情况下,能否给用户提供“一键复制”功能?

必须可以,微信提供了复制的API,如下:

wx.setClipboardData({
  data: url,
  success: function (res) {
    util.showModelTips('复制成功');
  }
})

我们来看一下“一键复制”的使用场景~

一、复制全部内容(今天要说的重点)

实例一:复制网址

这个就是上面说的例子,就不详细介绍了

实例二:复制全部文本

这种情况也有,就是想复制一段内容出来。做法是监听长按事件bindlongtap,然后触发弹层,点击弹层,触发“复制代码”~

实例三:复制所有内容,用微信通用菜单形式展示

看了小程序的API,其实也提供了showActionSheet方法,可以把菜单做的更像微信原生菜单,效果图和代码如下:

wx.showActionSheet({
  itemList: ['复制内容', '上传背景图片'],
  success: function (res) {
    console.log(res.tapIndex)
  },
  fail: function (res) {
    console.log(res.errMsg)
  }
})

二、复制部分文本内容

小程序API也提供了选择复制,就是使用text标签,设置selectable="true",并且必须是text标签,如下:

<text class="c-desc" selectable="true">{{detail.desc}}</text>

OK,今天就分享到这儿~

原文发布于微信公众号 - 知晓程序员(bainaweb)

原文发表时间:2017-08-31

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏前端真相

你还在用U盘傻瓜式地拷贝文件吗?如何跨操作系统共享文件?

本文探讨macOS、Linux、Windows三种操作系统两两之间的文件共享方式,根据数学中的排列组合知识可知,总共有六种两两组合方式。

2594
来自专栏云计算教程系列

如何在Debian 9上安装Linux,Apache,MariaDB,PHP(LAMP)堆栈

“LAMP”堆栈是一组开源软件,通常安装在一起以使服务器能够托管动态网站和Web应用程序。这个术语实际上是一个缩写,代表L inux操作系统,带有A pache...

2672
来自专栏Lambda

Ubuntu下SVN安装和配置

Ubuntu下SVN安装和配置 一、SVN安装 1.安装包 1.$ sudo apt-get install subversion 2.创建项目目...

2497
来自专栏smy

chrome浏览器Timing内各字段解析

Queueing 请求文件顺序的的排序 ? Stalled 是浏览器得到要发出这个请求的指令到请求可以发出的等待时间,一般是代理协商、以及等待可复用的TCP连接...

3275
来自专栏腾讯云存储团队

cosbrowser 腾讯云 COS 桌面客户端

首先猛戳下载地址安装好 cosbrowser:https://cloud.tencent.com/document/product/436/11366

6465
来自专栏图像识别与深度学习

2018-06-14Ubuntu常用命令

650
来自专栏机器学习实践二三事

VirtualBox安装CentOS联网问题

最近玩Hadoop需要几个虚拟机构成集群,就在VirtualBox上安装了CentOS,联网问题就出现了,具体就是两个: 主机与虚拟机的联通 虚拟机的上网问题 ...

1908
来自专栏Ryan Miao

springmvc学习笔记--mybatis--使用插件自动生成实体和mapper

由于表对象在开发过程中会增删字段,有时候需要重新生成实体和对应的mapper,这时候可以通过mybatis的插件的生成。 优点是快速简洁,缺点同样很明显:覆盖。...

35413
来自专栏清晨我上码

socket异常问题

可能这两种代码看上去区别不大唯一区别就是输入输出流的关闭顺序。而这种顺序不同也会导致出错。

2554
来自专栏JavaEdge

并发编程框架Disruptor实战 - WaitStrategy消费者等待策略

生产者和消费者都可能出现速度过快,追上对方的情况,这个时候就需要等待了.等待过程中也会有不同的策略.

1363

扫码关注云+社区