实现原理,使用js代码模拟人操作,就是 选择数据,copy数据,(如果有需要,还可以帮你在指定位置粘贴数据哦)
第一步:来一个可以选择的元素,例如
<textarea id = 'copy_element'>要被粘贴的内容</textarea>
第二步:JS模拟选择数据,这里选着数据其实是选择元素,能够自动获得文字,如果该元素有图片,也会在复制板
//获得元素
let copy_elem = document.getElementById('copy_elemet')
//模拟选择
copy_elem.select()
第三步:JS模拟点击复制,将内容复制到粘贴板
//模拟浏览器复制命令
document.execCommand("Copy")
题外话:怎样才能JS直接把要粘贴的字符串放到粘贴板?
先给出自己的解决方案:
在上面的基础上,将元素的内容变为要粘贴的字符串,
同时将原始 style=“display:none",就是隐藏起来(千万不要用hidden,他会让元素消失,自然不能获取到值)
<textarea id = "copy_element" style="display: none;">dsfsdfs</textarea>
<button onclick="autoCopy()">点我复制</button>
<script>
function autoCopy(){
let copy_content = "我是要被粘贴的内容"
let copy_elem = document.getElementById("copy_element")
document.getElementById("copy_element").value = copy_content
copy_elem.select()
document.execCommand('Copy')
alert('复制成功,请粘贴')
}
</script>