首页 / 问答 / JavaScript(js)中如何将文本复制剪贴板中去呢?

JavaScript(js)中如何将文本复制剪贴板中去呢?

0

在JavaScript的前端开发中,将文本复制到剪贴板有哪些实现方法呢?

回复 [×]
提交评论
请输入评论内容

2 个回答

  • 0

    以下方法适用于Chrome、Firefox、Internet Explorer和Edge,以及最新版本的Safari。

    function copyToClipboard(text) {
        if (window.clipboardData && window.clipboardData.setData) {
            return window.clipboardData.setData("Text", text);
    
        }
        else if (document.queryCommandSupported && document.queryCommandSupported("copy")) {
            var textarea = document.createElement("textarea");
            textarea.textContent = text;
            textarea.style.position = "fixed";
            document.body.appendChild(textarea);
            textarea.select();
            try {
                return document.execCommand("copy");
            }
            catch (ex) {
                // 复制失败的操作
            }
            finally {
                document.body.removeChild(textarea);
            }
        }
    }
    
    Rector的个人主页

    Rector

    2022-05-05 回答

    • 0

      在现代浏览器中,可以使用如下的方式:

      async copySomething(text?) {
        try {
          const toCopy = text || location.href;
          await navigator.clipboard.writeText(toCopy);
        }
        catch (err) {
          // 复制失败的操作
        }
      }
      
      Rector的个人主页

      Rector

      2022-05-05 回答

      我来回答