实现方式

  • navigator.clipboard
  • document.execCommand:简单的复制,内容不多的情况下使用,当
    1. var text = '被复制的内容,啦啦啦~';
    2. if (navigator.clipboard) {
    3. // clipboard api 复制
    4. navigator.clipboard.writeText(text);
    5. } else {
    6. var textarea = document.createElement('textarea');
    7. document.body.appendChild(textarea);
    8. // 隐藏此输入框
    9. textarea.style.position = 'fixed';
    10. textarea.style.clip = 'rect(0 0 0 0)';
    11. textarea.style.top = '10px';
    12. // 赋值
    13. textarea.value = text;
    14. // 选中
    15. textarea.select();
    16. // 复制
    17. document.execCommand('copy', true);
    18. // 移除输入框
    19. document.body.removeChild(textarea);
    20. }

    参考

    【1】剪贴板操作 Clipboard API 教程
    【2】JS复制文字到剪切板的极简实现及扩展