browser - HREF target='_blank' 在 Chrome 79 中不起作用
问题描述
使用简单的 HTML 代码,没有 JavaScript,没什么花哨的,我使用这个 HREF
<a href="https://www.example.com" target="_blank">Click here</a>
单击 IE、FireFox、Edge 中的链接确实会在单击时为https://www.example.com打开一个新选项卡。在 Chrome(版本 79)中,单击只是重新显示当前页面。
这发生在 Chrome 桌面和手机 (Android) 上。我安装的 Chrome 没有插件;没有安装弹出窗口或广告拦截。
为什么 Chrome 在target="_blank"
使用时不打开新标签页?谢谢。
添加
问题似乎在于 HREF 位于 FORM 元素内。FORM 元素如下:
<form action='' method='post'>
FORM 元素外带有 target="_blank" 的 HREF 可以正常工作。只是不在 FORM 元素内。
但仍然对为什么会这样......以及解决方法或解决方案感到困惑。
添加了更多 - 加码
表单内有一个按钮,并且该按钮包含一个图像,并且按钮中的链接不会打开新选项卡。
带有按钮的简单表格
<form action='' method='post'>
<p>inside the form</p>
<p><button><a href="https://www.bklnk.com/B004RVZRL0" target="_blank"><img src="https://via.placeholder.com/150 " width="24" height="24" class='button_img' alt='delete' /></a> that's a button</button></p>
<p><button><a href="https://www.bklnk.com/B004RVZRL0" target="_blank">that's a button</a> </button></p>
</form>
因此,通过进一步的测试,当 HREF 包裹在表单内带有图像的按钮周围时,单击以打开新选项卡将无法在 Chrome 中工作。但适用于 FireFox 和 Edge。
为什么?
表单中有四个图像/按钮。第四个是 HREF/空白。第 1-2-3 项是表格提交;需要将值传递给表单处理页面。第 4 项不需要由表单处理,但它在表单内部,因此所有 4 项将位于同一行。如果我将第 4 项(HREF/空白)放在表单之外,则第 4 项将环绕到下一行。一个
解决方案
<button>
不能像 an 那样在新选项卡中打开标签<a>
。
您可以改用它:
<p>
<button onClick="window.open('https://www.bklnk.com/B004RVZRL0');">
<img src="https://via.placeholder.com/150 " width="24" height="24" class='button_img' alt='delete' />
that's a button
</button>
</p>
推荐阅读
- active-directory - 如何从 Active Directory 域服务器中提取 Active Directory 组和林元数据
- vb.net - 如何在 VB.NET 的面板中动态添加文本框?
- java - 将连续的字符串数据拆分为所需的垂直输出
- jquery - 如何将 LIKE Query 与 2 个表一起使用?
- sql-server - 使用 SQL Server 查询检索包含 @ 的 xml
- c# - Ajax 数据类型响应更改为字符串,尽管它被称为 Json
- codeigniter-3 - 如何防止登录时的sql注入
- javascript - 如何为分页 REST API 执行“实际页面”
- swift - 附加到类内部的数组实际上并不是附加到调用对象?
- pointers - 为什么golang行为中的字符串指针在范围循环中违反直觉?