在开发过程中,我们常常需要实现一键复制链接。具体的两种实现方式如下:
1.原生开发
if (evt.target.className == 'copy-url') { var Url2 = evt.target.getAttribute('data-index'); //获取需要复制的内容 var oInput = document.createElement('input'); oInput.value = Url2; document.body.appendChild(oInput); oInput.select(); document.execCommand("Copy"); oInput.className = 'oInput'; oInput.style.display = 'none'; alert('复制成功'); }
2.vue+element开发
安装插件:
npm
install
clipboard --save
使用插件:
import Clipboard from "clipboard";
<el-table-column label="视频链接" align="center" prop="share_url" :resizable="false" > <template slot-scope="scope"> <el-tooltip placement="top"> <div slot="content">点击复制</div> <span style="display:block;cursor:pointer;100%;overflow: hidden;text-overflow:ellipsis;white-space: nowrap;" class="tag-read" :data-clipboard-text="scope.row.share_url" @click="copyUrl" >{{ scope.row.share_url }}</span > </el-tooltip> </template> </el-table-column>
// 复制链接函数 copyUrl() { var clipboard = new Clipboard(".tag-read"); clipboard.on("success", e => { this.$message.success("复制成功"); //这里你如果引入了elementui的提示就可以用,没有就注释即可 // 释放内存 clipboard.destroy(); }); clipboard.on("error", e => { // 不支持复制 console.log("该浏览器不支持自动复制"); // 释放内存 clipboard.destroy(); }); },