var copy = function () {
let copyId = String(new Date().getTime())
let input = document.getElementById(copyId);
if (!input) {
input = document.createElement('input');
input.id = copyId;
input.readOnly = "readOnly"; // 防止ios聚焦触发键盘事件
input.style.position = "absolute";
input.style.left = "-1000px";
input.style.zIndex = "-1000";
document.body.appendChild(input)
}
let copyText = "WXTRDFDE"; // 需要复制的内容
input.value = copyText;
// ios必须先选中文字且不支持 input.select();
selectText(input, 0, copyText.length);
if (document.execCommand('copy')) {
document.execCommand('copy');
alert('复制成功!');
} else {
alert('复制失败!');
}
input.blur();
// input自带的select()方法在苹果端无法进行选择,所以需要自己去写一个类似的方法
// 选择文本。createTextRange(setSelectionRange)是input方法
function selectText(textbox, startIndex, stopIndex) {
if (textbox.createTextRange) {//ie
const range = textbox.createTextRange();
range.collapse(true);
range.moveStart('character', startIndex);//起始光标
range.moveEnd('character', stopIndex - startIndex);//结束光标
range.select();//不兼容苹果
} else {//firefox/chrome
textbox.setSelectionRange(startIndex, stopIndex);
textbox.focus();
}
}
}
js实现复制,兼容IOS
最新推荐文章于 2024-04-12 18:31:57 发布