You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用navigator.clipboard.writeText时如何保留&符号避免转义?

解决复制链接时&被转成&的问题

问题根源是你使用了innerHTML获取内容——它返回的是元素内部的HTML解析结果,浏览器会自动把原始的&转义为HTML实体&,导致复制后的链接失效。

以下是几个可行的解决方案:

方案1:改用textContent获取纯文本

textContent会直接返回元素的原始纯文本内容,不会处理HTML实体,能完整保留&符号:

var copyLink = document.getElementById("link").textContent;
navigator.clipboard.writeText(copyLink);

方案2:如果是<a>标签,直接读取href属性

如果你的#link元素是链接标签,直接读取它的href属性是最准确的,因为这里存储的就是原始的链接地址:

var copyLink = document.getElementById("link").href;
navigator.clipboard.writeText(copyLink);

方案3:手动解码HTML实体(备用)

如果必须使用innerHTML,可以通过DOMParser解码实体内容:

var encodedLink = document.getElementById("link").innerHTML;
var parser = new DOMParser();
var decodedText = parser.parseFromString(encodedLink, "text/html").body.textContent;
navigator.clipboard.writeText(decodedText);

内容的提问来源于stack exchange,提问作者Blog Khóa Học

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 00:43:11