位置:首页 > JavaScript > JavaScript >

使用JavaScript复制指定的页面文字到剪贴板 js复制页面文字

字号+ 作者:micloud 来源:www.seoalphas.com 2019-09-08 15:14 浏览量:4707

使用JavaScript复制指定的页面文字到剪贴板,需要依赖一个js类:clipboard.min.js,现代化的拷贝文字,不依赖flash, 不依赖其他框架,gzip压缩后只有3kb大小(想了解这个插件的自行百度)。

代码示例如下:

<div id="alpha">待复制的文字内容</div>
  <button class="btn">复制按钮</button>
<script>
    var content = $("#alpha").text();
    var clipboard = new Clipboard('.btn', {
        text: function() {
            return content;
        }
    });
    clipboard.on('success', function(e) {
        alert("文字复制成功");
    });
 
    clipboard.on('error', function(e) {
        console.log(e);
    });
</script>

代码很简单,通过jQuery获取待复制的文字内容,然后实例化插件类,如果想让复制成功后有个提示,可以在success中进行提示。

需要注意的是,点击的复制按钮必须是button,测试了其他标签均不可以。

记得必须引入类文件:clipboard.min.js!点击下载


另外一种复制文字的方法,不需要引入类文件,但是兼容性有限,直接贴上代码,感兴趣的可以研究:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<style>
.test{display:black}
</style>
<body>
    <div> <span>微信</span>
        <div id="wxnum">微信hahaha2231</div>
        <a href="javascript:void(0);" id="copyBtn">复制</a>
    </div>
</body>
<script type="text/javascript">
function copyArticle(event) {
    const range = document.createRange();
    range.selectNode(document.getElementById('wxnum'));
    const selection = window.getSelection();
    if(selection.rangeCount > 0) selection.removeAllRanges();
    selection.addRange(range);
    document.execCommand('copy');
    alert("复制成功!");
  }
document.getElementById('copyBtn').addEventListener('click', copyArticle, false);
</script>
</html>


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • js操作radio单选框改变事件 点击radio执行相应操作

    js操作radio单选框改变事件 点击radio执行相应操作

    浏览次数:15190

  • 关于layui富文本编辑器同步编辑器内容到textarea layedit.sync(index)

    关于layui富文本编辑器同步编辑器内容到textarea layedit.sync(index)

    浏览次数:12795

  • JavaScript中对url进行编码:urlencode编码

    JavaScript中对url进行编码:urlencode编码

    浏览次数:11410

  • js清除两个数组相同数据(js两个数组对比 去除相同项得到新数组)

    js清除两个数组相同数据(js两个数组对比 去除相同项得到新数组)

    浏览次数:6846

网友点评
评论区域