刚开始接触laya,刚好项目中要实现一个一键复制玩家地址的功能,在网上查了一些资料,现在H5和小游戏上面普遍使用的方法有两种,1.clipboard  2.使用document.execCommand。归根结底clipboard也是使用了第二种方法,只是做了一层包装。我之前曾经尝试第二种方法,document.execCommand这个执行的返回值只是表示当前运行环境(网页,手机)是否支持这个命令,我调用之后,并没有把我想要复制的文本复制到剪切板。查了很久都不懂是为啥,最后还是选用了第一种方法(如有大神用第二种方法实现了的话,望留言赐教一把)。

  • 先去git上将工程下载下来。
  • 将dist文件夹中的clipboard.js文件移植到Laya工程的 bin下的libs目录中并在index.js中加入以下代码
loadLib("libs/clipboard.js")
  • 注意要放在loadLib("js/bundle.js")之前
  • 在需要用到该功能的laya界面代码中加入以下代码。项目是用AS3编写,用其他语言的转换以下就可以了
public function InitCopy():void
{var layaContainer = Laya.Browser.getElementById("layaContainer");this.btnCopy = Browser.createElement("button");//生成一个按钮this.btnCopy.id = "btnCopy";this.btnCopy.className = "btnCopy";//指定class属性this.btnCopy.style.position = "absolute";this.btnCopy.style["font-size"] = '28px';this.btnCopy.style.color = '#ffffff';this.btnCopy.style["opacity"] = '0';var that = this;layaContainer.appendChild(this.btnCopy);//把按钮添加到layacontainer中fitDOM();//初始化的时候先将按钮和laya的按钮映射一把。var _btnCopy = new window.ClipboardJS('.btnCopy',{text:function(){return "想要复制的文本信息";}});// 每次舞台尺寸变更时,都会调用Utils.fitDOMElementInArea设置copy按钮位置Laya.stage.on(Laya.Event.RESIZE, this, this.fitDOM);
}
  • 在这里要注意下就是 new window.ClipboardJS 中的代码块必须用js来编写。之前试过用as3来,结果不识别。
  • fitDOM()主要是把创建的复制按钮和laya的按钮做1个映射
//适配copy按钮
public function fitDOM():void
{Utils.fitDOMElementInArea(this.btnCopy, xxxxxBtnObj, 0, 0, xxxxxBtnObj.width, xxxxxBtnObj.height);
}

这样,打开这个界面的时候调用一把InitCopy就会生成1个按钮和对应的按钮映射在一起,点击就可以将想要复制的文本信息复制到剪切板了,亲测可用。

Laya 一键复制文本功能相关推荐

  1. 实现一键复制文本功能(laya、egret、cocos)

    实现一键复制文本功能(laya.egret.cocos) 如果想转请评论留个言并注明原博 @Sclifftop @13805064305 维尼 https://blog.csdn.net/S_clif ...

  2. 小程序文字长按识别复制和自定义一键复制文本功能

    1.文字长按识别复制: 把需要长按复制的文字用text标签包裹,然后添加selectable="true"属性即可 但是这个属性有些缺点,就是长按后不可以直接全选中文本内容进行复制 ...

  3. JS一键复制粘贴功能

    使用clipboard.js 实现: 它是一个不需要Flash,就能实现文本复制或者剪切到剪切板的轻量级插件: 具体实例: 可以使用cdn 或者直接下载 设置好引用路径. <!DOCTYPE h ...

  4. js实现粘贴板js插件clipboard.js实现一键复制粘贴功能

    js实现粘贴板js插件clipboard.js实现一键复制粘贴功能 简介 下载 引入插件 使用 一个节点的复制 多个节点的复制 剪切文本框 复制输入框 简介 clipboard.js 提供了一种更好. ...

  5. 小程序 - 实现【一键复制】功能

    小程序 - 实现[一键复制]功能 为啥想起使用[一键复制]功能?因为个人小程序里,不许加外链接,很是头疼,就想到一键复制链接,这是我刚写的一个减一的小程序: 使用[一键复制]: wxml 文件: &l ...

  6. 记录一下微信小程序-一键复制链接功能

    记录一下微信小程序-一键复制链接功能 //首先是小程wxml文件<button bindtap="copyBtn" data-id="下载链接" clas ...

  7. pc端VUE实现一键复制内容功能

    接到一个需要,需要在pc端实现一键复制粘贴功能,如图所示: 当我点击复制按钮时,会提示"复制成功",这样复制的内容就可以在其他地方使用了 具体实现方法如下: 我写了一个公共的方法 ...

  8. uniapp一键复制文本内容以及下载所有图片或视频

    最近在完成公司项目时遇到了一个需求,要求一键复制广告的文本和广告内的所有图片 解决方法如下: 第一步:在点击按钮处,点击时传参,分别时双向绑定的文本内容,图片视频地址, <button clas ...

  9. js实现点击一键复制文本

    一.功能描述 点击按钮,实现一键复制div元素中的文本内容,并且可以实现粘贴. 为了体现出粘贴功能,添加一个input框,精赋值的内容粘贴到input框里 二.代码实现 html部分 <div ...

最新文章

  1. Space X的火箭上天,Tesla的业绩落地
  2. Groovy初体验:构建高性能JVM应用
  3. 开源实时音视频技术WebRTC中RTP/RTCP数据传输协议的应用
  4. 理论+实验·MHA高可用配置及故障切换
  5. 4场直播丨站撸Oracle、MySQL、医疗、航空
  6. java 异常处理向处机制笔记
  7. kafka java 生产消费程序demo示例
  8. for循环的经典例题
  9. 【scala】获取当前时间的上一个自然周以及自然周集合;获取当前时间的上一个自然月以及自然月的第一天与最后一天
  10. 扭蛋机html源码,jQuery动画扭蛋机抽奖代码
  11. 1024_scsdn_徽章获取日_日常工作记录_百度图片爬取小程序
  12. 短视频游戏主播如何变现,教你快速找到属于自己的赚钱方式丨国仁网络
  13. Android中将bitmap转换成单色的BMP图片
  14. 2020程序员大厂面试流程,面试游刃有余!
  15. 娃娃机的秘密:你为什么总是抓不到娃娃?
  16. CentOS7:内网中两台机器不能连接的问题(Destination Host Unreachable),实际为AP隔离问题
  17. 张三为他的手机设定了自动拨号- 按1:拨爸爸的号- 按2:拨妈妈的号- 按3:拨爷爷的号- 按4:拨奶奶的号
  18. COMS原理及门电路设计
  19. 需求分析怎么写:Volere版需求规格说明书
  20. layui 的checkbox事件

热门文章

  1. 阿里平头哥宣布开源四款玄铁 RISC-V 系列处理器
  2. JVM思维导图(知识点总结,JVM面试题整理)
  3. estern c语言,柯朗数(Courant number)研究
  4. iOS 淡入淡出转换rootViewController
  5. 华雨欢:突破8000后创一年内新高,佛系持币最终获胜
  6. 实时监控文本框输入字数
  7. [No0000C9]神秘的掐指一算是什么?教教你也会
  8. linux挂载群晖网络硬盘,用Ubuntu打造NAS操作系统之Ubuntu挂载硬盘的方法教程
  9. 产品介绍演示管理:医药代理考勤打卡照片记录防篡改的系统
  10. centos wget nvm 失败