前言
最近做到两次这种点击按钮,复制文本的需求了。所以在此记录下来。
实现思路
-
创建一个textarea元素,将其样式设置为display: block;opacity:0
-
将所需复制的文本赋值到这个textarea元素。
-
将此textarea元素追加到body里
-
代码选中这个元素,复制
上代码
// 复制文本
function copy (url) {
const copyInput = document.createElement("textarea");
copyInput.setAttribute('style', 'display: block;opacity:0');
copyInput.value = url
document.body.appendChild(copyInput);
copyInput.select();
let result = document.execCommand('Copy');
copyInput.blur() // 这里记得写哟, 不然会弹出手机的软键盘
console.log('copyInput.value', copyInput.value)
console.log('result', result)
}
效果就实现了,亲测有效~