<textarea id='copy-text' ></textarea>
var Url2=document.getElementById("copy-text");
Url2.select(); // 选择对象
document.execCommand("Copy"); // 执行浏览器复制命令
Message.success('复制成功');
这种复制方式在苹果手机和safari上失效,这个是不兼容的问题怎么处理啊
<textarea id='copy-text' ></textarea>
var Url2=document.getElementById("copy-text");
Url2.select(); // 选择对象
document.execCommand("Copy"); // 执行浏览器复制命令
Message.success('复制成功');
这种复制方式在苹果手机和safari上失效,这个是不兼容的问题怎么处理啊
这个方法对我有效,iOS12兼容测试OK,https://juejin.cn/post/696922...
copyText (text) {
const input = document.createElement('input')
document.body.appendChild(input)
input.setAttribute('readonly', 'readonly')
input.setAttribute('value', text)
input.select()
input.setSelectionRange(0, text.length)
try {
document.execCommand('copy')
} catch (err) { }
document.body.removeChild(input)
}
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
查阅相关文档,ios不支持
input.select();
而且必须选中文字才能执行
document.execCommand('copy')
否则会返回
false
因此可以使用
createTextRange
选中文字后执行document.execCommand('copy')
可参考我整理的文章 h5实现一键复制到粘贴板 兼容ios
.