【javascript】js实现复制、粘贴

时间:2020-12-09 14:34:58

使用document.ExecCommand("copy")命令,官方文档,点我

例如:

<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function copyLink(){
var e = document.getElementById("copy");
e.select(); // 选择对象
document.execCommand("Copy"); // 执行浏览器复制命令
alert("内容复制成功!");
}
</script>
</head>
<body>
<textarea id="copy">待复制的内容</textarea>
<input type="button" onclick="copyLink()" value="点击复制"></input>
</body>
</html>

在复制中,使用最多的就是clipboard.min.js插件了,点我查看下载地址,点我查看官方文档

<body>
<p>通过text参数来进行复制操作</p>
<button class="btn">复制</button> </body>
<script src="js/version/clipboard.min.js"></script>
<script>
var clipboard = new Clipboard('.btn', {
text: function() {
return '这里是text参数返回的内容 - Hello yubai8';
}
}); clipboard.on('success', function(e) {
alert("文字已复制到剪贴板中");
console.log(e);
}); clipboard.on('error', function(e) {
alert("异常错误: " + JSON.stringify(e.message));
console.log(e);
});
</script>

也可以像下面这样:

<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
</head> <body>
<div>欢迎光临 yubai9</div>
<button class="btn" data-clipboard-action="copy" data-clipboard-target="div">Copy</button> <script src="js/version/clipboard.min.js"></script> <script>
var clipboard = new Clipboard('.btn'); clipboard.on('success', function(e) {
alert("文字已复制到剪贴板中");
console.log(e);
}); clipboard.on('error', function(e) {
alert("异常错误: " + JSON.stringify(e));
console.log(e);
});
</script>
</body> </html>

clipboard.min.js插件并不是兼容所有的浏览器。

如果不需要显示定义textarea后再复制,可以这样做。先创建一个textarea元素,然后进行复制,最后再把这个元素删除掉。下面显示了使用的过程:

        var text="需要复制的内容";
var element = $("<textarea>" + text + "</textarea>");
$("body").append(element);
element[0].select();
document.execCommand("Copy");
element.remove();

原文链接:

JS实现复制粘贴功能

js实现点击复制功能