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

如何用单段JavaScript脚本实现网页所有链接在新窗口打开?

实现所有通讯链接在新窗口打开的通用方案

方案1:HTML原生属性(最简单)

如果可以直接修改链接的HTML代码,给每个指向Mailchimp的<a>标签加上target="_blank"属性就行,不用写JS:

<a href="https://mailchimp.com/对应通讯地址" target="_blank">
  <span style="font-size:16px;"><u>E-News March 2nd</u></span>
</a>

这是浏览器原生支持的属性,稳定可靠,后续新增链接时只需要加上这个属性即可。

方案2:JavaScript事件委托(自动处理所有现有/新增链接)

如果不想手动修改每个链接,或者后续会动态新增通讯链接,用事件委托的方式最省心——只需要一段脚本,就能处理页面上所有现有和未来新增的Mailchimp链接:

// 监听整个文档的点击事件
document.addEventListener('click', function(e) {
  // 找到点击元素所在的最外层<a>标签
  const targetLink = e.target.closest('a');
  
  // 判断是否是指向Mailchimp的链接
  if (targetLink && targetLink.href.includes('mailchimp.com')) {
    e.preventDefault(); // 阻止默认跳转行为
    window.open(targetLink.href, '_blank'); // 在新窗口打开链接
  }
});

说明:

  • closest('a')能确保点击到链接内部的子元素(比如你例子里的<span>、<u>)时,依然能触发逻辑;
  • targetLink.href.includes('mailchimp.com')可以精准只处理Mailchimp的链接,不会影响站内其他正常跳转的链接;
  • 如果需要让所有链接都在新窗口打开,删掉上面的&& targetLink.href.includes('mailchimp.com')判断即可。

最后,记得把原来单独写的onclick="myFunction()"和对应的函数代码删掉,避免逻辑冲突。

内容的提问来源于stack exchange,提问作者anthony.cupp

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 00:07:29