本来使用的document.execCommand("Copy"),结果发现IOS复制不到剪贴板
我的html结构如下
<div class="form_copy">
<label class="form_copy_item" for="">
<b class="text">加盟热线:</b>
<input type="text" value="{$param.tel}" readonly>
<span class="copy_dom">点击复制去咨询</span>
</label>
</div>
js
var u = navigator.userAgent, app = navigator.appVersion;
var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1;
var systemFlag = "";
//要先判断当前是什么系统,否则会报错,无法执行语句
if (isAndroid) {
systemFlag = "android";
} else {
systemFlag = "ios";
}
//点击复制按钮时,执行复制功能
$(".copy_dom").on('click', function () {
if (systemFlag == "android") {
//android复制
//只需要改变取值方式即可
$(this).prev().select(); // 选择对象
document.execCommand("Copy"); // 执行浏览器复制命令
alert("已复制好,可贴粘。");
}else{
//IOS复制
var input = document.createElement("input");
//只需要改变取值方式即可
input.value = $(this).prev("input").val();
document.body.appendChild(input);
input.select();
input.setSelectionRange(0, input.value.length), document.execCommand('Copy');
document.body.removeChild(input);
}
});