为了账号安全,请及时绑定邮箱和手机立即绑定

怎么在微信浏览器中用js触发copy事件?

怎么在微信浏览器中用js触发copy事件?

皈依舞 2018-08-10 10:09:00
项目中需要实现这样一个功能。点击“复制单号”按钮后复制相应的订单号。尝试了document.execCommand("copy"),测试返回结果是true,但是不触发copy事件,查询原因是出于安全考虑,不允许通过execCommand触发复制……尝试了ZeroClipboard.js插件,官网报错提示Flash is disabled or not installed,所有借用flash实现copy的方案被枪毙。现在想不出来怎么弄了,难道无解一定要用户自己用手指去戳去拖去选复制么...求教
查看完整描述

1 回答

?
繁花如伊

TA贡献2012条经验 获得超12个赞

是这样的,由于安全原因,在safari是无法实现复制功能的。

你需要跟PM沟通,这个功能web端实现起来,兼容性确实是有问题的。这个没办法。

体验最好的方式是:

在支持的浏览器下,使用document.execCommand("copy")

若浏览器不支持(例如safari)

一般有两种方案:

1、订单号后面的那一串数字,放入一个新创建的input中,然后用代码选中这些数字,用户就不用长按选中然后点复制了,你帮用户做了第一步,用户只需点击“复制”即可

2、使用prompt('复制失败。请选中下列订单号,手动复制',160714103950727)

PS:我会告诉你,我前几天刚做过这个功能嘛?哈哈

复制到剪切板


查看完整回答
反对 回复 2018-09-23
  • 1 回答
  • 0 关注
  • 693 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信