如何通过JQ将字符串复制粘贴到剪贴板

var a='这里是需要复制的内容';
执行jq后将变量a的内容自动复制到剪贴板或追加到剪贴板中。

var a='这里是需要复制的内容';
var flag = copyText(a)
document.body.appendChild(flag);

可以调用ZeroClipboard插件。地址:https://github.com/zeroclipboard/jquery.zeroclipboard
参考代码:

 <script src="jquery.js"></script>
<script src="dist/jquery.zeroclipboard.min.js"></script>
<script>
  jQuery(document).ready(function($) {
    $("body")
      .on("copy", ".zclip", function(/* ClipboardEvent */ e) {
        e.clipboardData.clearData();
        e.clipboardData.setData("text/plain", $(this).data("zclip-text"));
        e.preventDefault();
      });
  });
</script>
<button class="zclip" data-zclip-text="Testing 1-2-3!">Click to copy!</button>

引入一个clipboard.js文件即可使用


点击测试


<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title> 页面名称 </title>
</head>
<body>
<p>点击复制后在右边textarea CTRL+V看一下</p>
<input type="button" id="btn" value="复制"/>
<textarea rows="4"></textarea>
<script type="text/javascript">
function copyText(text) {
    var textarea = document.createElement("textarea");
    var currentFocus = document.activeElement;
    document.body.appendChild(textarea);
    textarea.value = text;
    textarea.focus();
    if (textarea.setSelectionRange)
        textarea.setSelectionRange(0, textarea.value.length);
    else
        textarea.select();
    try {
        var flag = document.execCommand("copy");
    } catch(eo){
        var flag = false;
    }
    document.body.removeChild(textarea);
    currentFocus.focus();
    return flag;
}

document.getElementById('btn').onclick = function(){
    var a='这里是需要复制的内容';
    var flag = copyText(a);//这个必须在DOM对象的事件线程中执行
    alert(flag ? "复制成功!" : "复制失败!");
};
</script>
</body>
</html>

https://github.com/zenorocha/clipboard.js
不依赖flash ,兼容所有浏览器