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

HTML中Href含引号导致书签代码截断,无法修改JS求解决方案

问题解决:HTML href引号嵌套导致代码截断

你的问题根源是引号嵌套冲突:<a>标签的href属性用双引号包裹JavaScript代码,但代码内部的querySelector("link[rel*='icon']")又使用了双引号,浏览器会误将这个内部双引号识别为href属性的结束符,导致后续代码被截断,只显示到querySelector(部分。

修正方案

你需要将JavaScript代码内部的双引号转义为HTML实体&quot;,这样浏览器就不会提前终止href属性的解析。修正后的完整代码如下:

<a href="javascript:function gcloak() { var link = document.querySelector(&quot;link[rel*='icon']&quot;) || document.createElement('link');link.type = 'image/x-icon';link.rel = 'shortcut icon';link.href = 'https://ssl.gstatic.com/docs/doclist/images/infinite_arrow_favicon_5.ico';document.title = 'My Drive - Google Drive';console.log(document.title);document.getElementsByTagName('head')[0].appendChild(link) };gcloak();setInterval(gcloak, 1000);">Google Drive Disguise</a>

另一种可选方案

如果你不想转义双引号,也可以将href属性的包裹符换成单引号,同时把代码内部的单引号转义为&#39;,代码如下:

<a href='javascript:function gcloak() { var link = document.querySelector("link[rel*=&#39;icon&#39;]") || document.createElement(&#39;link&#39;);link.type = &#39;image/x-icon&#39;;link.rel = &#39;shortcut icon&#39;;link.href = &#39;https://ssl.gstatic.com/docs/doclist/images/infinite_arrow_favicon_5.ico&#39;;document.title = &#39;My Drive - Google Drive&#39;;console.log(document.title);document.getElementsByTagName(&#39;head&#39;)[0].appendChild(link) };gcloak();setInterval(gcloak, 1000);'>Google Drive Disguise</a>

两种方案都能解决截断问题,你可以选择更贴合原始代码结构的第一种方案,直接转义内部双引号即可。

内容的提问来源于stack exchange,提问作者user20393634

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 04:40:29