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

锚点标签设target="_blank"与完整URL仍异常重定向求助

问题分析与解决

核心原因

  • 绑定在.MCPopupThumbnailPopup类上的JavaScript脚本拦截了<a>标签的原生点击事件,强制修改了跳转URL。
    从标签的class名称来看,这是MadCap Flare这类文档工具自带的弹窗组件脚本,原本逻辑是点击缩略图后在弹窗内打开大图,而非跳转新标签页,因此它会把完整域名的URL替换为当前域名下的相对路径,同时忽略target="_blank"的设置。
  • 当href改为https://google.com时,脚本识别到这是外部第三方域名,未进行拦截修改,所以原生跳转行为正常生效。

解决方案

方案1:移除弹窗类,恢复原生跳转

直接删除<a>标签上的MCPopupThumbnailPopup类,保留必要属性即可:

<a 
  class="MCPopupThumbnailLink" 
  href="https://z.y.com/wf/en-us/Content/resources/images/workflows/object-map-list.png"
  target="_blank"
  rel="noopener noreferrer"
>
   <img 
     class="MCPopupThumbnail img imgthumbnail"
     data-mc-width="346"
     data-mc-height="582"
     src="https://z.y.com/wf/en-us/Content/resources/images/workflows/object-map-list_thumb_220_220.png" 
     tabindex="">
</a>

这样弹窗脚本就不会拦截该链接的点击,原生新标签页跳转功能即可正常工作。

方案2:自定义脚本覆盖原有逻辑(保留弹窗功能)

若需要同时保留弹窗预览和外部链接新标签页跳转的功能,可添加以下自定义脚本:

document.querySelectorAll('.MCPopupThumbnailPopup[href^="https://"]').forEach(link => {
  link.addEventListener('click', function(e) {
    if (this.host !== window.location.host) {
      e.stopPropagation();
      window.open(this.href, '_blank');
    }
  });
});

该脚本会针对外部完整URL的链接,跳过弹窗脚本的处理,直接在新标签页打开目标地址。

方案3:排查服务器端重定向(低概率)

虽然可能性极低,但可确认z.y.com是否存在指向x.y1.com的重定向规则,不过从google.com测试正常的结果来看,此情况基本可以排除。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 17:02:51