项目中需要实现这样一个功能。点击“复制单号”按钮后复制相应的订单号。尝试了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:我会告诉你,我前几天刚做过这个功能嘛?哈哈
添加回答
举报
0/150
提交
取消