位置:首页 > JavaScript > JQuery >

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

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

使用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.作者投稿可能会经我们编辑修改或补充。

下一篇:没有了
相关文章
  • fullCalendar改造计划之带农历节气节假日的万年历

    fullCalendar改造计划之带农历节气节假日的万年历

    浏览次数:5897

  • jQuery动态获取修改background-image:url()属性的值

    jQuery动态获取修改background-image:url()属性的值

    浏览次数:5635

  • jQuery中ajax的4种常用请求方式

    jQuery中ajax的4种常用请求方式

    浏览次数:4519

  • jquery给input赋值val(val)

    jquery给input赋值val(val)

    浏览次数:4130

网友点评
评论区域