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

如何实现点击div跳转URL并在新标签页打开

问题解答

这个需求完全可以实现。你添加target="_blank"不生效的原因是:target是<a>标签的专属属性,对普通div元素、location.href跳转逻辑均不生效,location.href本身的作用就是修改当前页面的跳转地址,自然无法实现新页面打开的效果。

具体实现方法

方法1:直接替换原有点击逻辑(最小改动)

把你原来onClick绑定的location.href逻辑替换为window.open()API即可,示例代码如下:

<div onClick="window.open('你要跳转的目标URL', '_blank');">
  你原来div内的所有内容
</div>
  • window.open的第二个参数就是指定打开方式,填_blank即可实现新页面打开
  • 该场景是用户主动点击触发的跳转,不会被浏览器的弹窗拦截规则拦截,可以正常使用

方法2:语义化优化方案(更推荐)

如果没有必须用div的特殊场景,更建议直接把<a>标签设置为块级元素,既符合前端语义规范,对SEO、无障碍适配都更友好,也不需要额外写JS逻辑:

<a href="你要跳转的目标URL" target="_blank" style="display: block;">
  你原来div内的所有内容
</a>
  • 给<a>标签设置display: block后,它的渲染行为和div完全一致,支持设置宽高、内外边距等所有CSS样式,不需要额外调整原有布局
  • 原生支持新页面打开、回车触发跳转等默认行为,不需要额外写兼容逻辑

无障碍适配补充

如果你必须使用div实现点击跳转,建议补充无障碍适配属性,方便键盘操作、屏幕阅读器识别:

<div 
  role="button"
  tabindex="0"
  onClick="window.open('你要跳转的目标URL', '_blank');"
  onkeydown="if(event.key === 'Enter' || event.key === ' ') { window.open('你要跳转的目标URL', '_blank'); }"
>
  你原来div内的所有内容
</div>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 15:15:00