共计 697 个字符,预计需要花费 2 分钟才能阅读完成。
我的项目中遇到了复制粘贴需要,在小程序外面比拟好办,间接应用 api 接口 setClipboardData,然而在 h5 页面外面就略微麻烦点。须要借助输入框的 select 性能,能够应用 textarea 或者 input。
一般 H5 页面,下应用办法如下:
<textarea readonly rows="1" id="copy">12345</textarea>
<span @click="copy"> 复制 </span>
var copyObj=document.getElementById("copy");
copyObj.select();
document.execCommand("Copy");
alert(' 复制胜利);
第二次应用 uni-app 做的 vue 我的项目,打包成 h5,因为组件 textarea 会被编译成上面这样子:
此时 id=”copy” 不是在原生的 textarea 下面,所以下面的办法行不通。还是百度找到上面的方法:
let textarea=document.createElement('textarea')
textarea.setAttribute('style','position:fixed;top:0;left:0;opacity:0;z-index:-10;');
let text=document.createTextNode('12345');
textarea.appendChild(text);
document.body.appendChild(textarea);
textarea.select();
document.execCommand('copy');
alert(' 复制胜利);
正文完