用JavaScript将input/textarea中的文本复制粘贴到剪切板


发布者 ourjs  发布时间 1529981667955
关键字 JS学习  JavaScript 
浏览器对剪切板有一定的安全限制,与 window.open 方法类似,只有在用户交互过程中才允许操作,比如说鼠标点击,键盘输入等。

要想将文本复制到剪切板首先要将该文本框全选,如:

document.querySelector('#input').select();

然后调用复制命名,复制到剪切版

document.execCommand('copy');

最后,这些调用必须在事件响应中调用,如:

document.querySelector("#visible-button").onclick = function() {
  document.querySelector("#visible-input").select();
  document.execCommand('copy');
};

此方法兼容 IE9+、Firefox、Chrome浏览器。如果将 querySelector 替换成 jQuery 则兼容 IE7/8,

将复制的内容粘贴到指定位置,因有更大的安全风险,目前仅旧版IE支持,如:

$(".btn.btn-primary").on('click', function() {
  $("#bind-string")[0].select();
  document.execCommand('paste');
})


示例: http://www.jstips.co/en/javascript/copy-to-clipboard/