Javascript使用导航器将URL链接复制到剪贴板

问题描述

我正在尝试使用以下代码复制网址链接

let text = 'click here'
let hrefLink = `<a href="https://stackoverflow.com">${text}</a>`;

if (navigator && navigator.clipboard != undefined) {
  navigator.clipboard.writeText(hrefLink);
}

如果我使用上面的代码,则粘贴的文本将是类似链接

<a href="https://stackoverflow.com">click here</a>

但是我试图粘贴像这样的文本“ click here”,我可以看到一些使用document.exec()的示例。如果有人建议使用navigator.clipboard会有所帮助

解决方法

您的示例尝试使用navigator.clipboard.writeText复制到剪贴板,该{只能写入纯文本。如果您想嵌入链接,则可能需要尝试通过navigator.clipboard.write'text/html'类型来编写HTML。

有关如何使用剪贴板API编写HTML的示例,请参见此Safari blog post示例或此HTML demo site的源代码。