关闭窗口 - 如何确定窗口是如何打开的?

2023-12-06

在一页上,我有一个超链接target="_blank".

在目标页面上,我有一个“关闭”按钮,它使用 JS 关闭新选项卡/窗口。

  1. 如果用户点击超链接,我可以使用JS关闭打开的窗口。伟大的!

  2. 如果用户右键单击链接并选择“在新选项卡中打开”,我的 JS 事件无法关闭窗口。嘘。 :-(

我理解这样做的原因,但是在第二种情况下,如果 Javascript 无法关闭窗口,我不想显示“关闭”按钮。

所以我的问题是:如何预先确定窗口是否可以用 Javascript 关闭?


不要使用target="_blank", use target="popup1"。 然后在新选项卡中使用以下命令检测它:

if(window.name == "popup1") {
  document.body.className += " closeable";
}

Then:

<style>
.closeable #closebutton {display:block}
</style>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关闭窗口 - 如何确定窗口是如何打开的? 的相关文章

随机推荐

  • 当 Gradle 具有更改 APK 名称的自定义逻辑时,Android Studio 会将无菌 APK 上传到设备

    While using Android Studio I encountered the following error The date of the APK is 2 days older than the current one Gr
  • 在 Visual Basic 6.0 中使用 Microsoft (Office) 365 工具

    我正在开发一个用 Visual Basic 6 0 编写的应用程序 该应用程序支持将 listView 导出到 Microsoft Excel 文档 如果用户安装了旧版本的 Microsoft Office 一切都会正常工作 现在我想为系统
  • jQuery 和原型事件

    我有一个在 加载 事件上触发的原型代码 Event observe imageEl load this someFunction bind this 当我使用 jQuery 代码创建 真实 事件时 例如 jQuery imageEl sel
  • FOUND_ROWS() 不断返回 0

    result db con gt query SELECT SQL CALC FOUND ROWS FROM users LIMIT 0 10 count result db con gt query SELECT FOUND ROWS a
  • 为什么-use-network=false

    有人知道为什么我必须在 Flex Builder 中使用 use network false 吗 这是在项目属性中设置的 并且是附加编译器参数 仅当我想读取 XML 等外部文件时才会出现这种情况 我团队中的其他人不必有 use networ
  • 在 R 中读取格式错误的 csv - 引号不匹配

    我有数百个大型 CSV 文件 每个文件的大小从 10k 行到 100k 行不等 其中一些文件的描述格式不正确 引号内有引号 因此它们可能看起来像 ID Description x 3434 abc def 988 2344 fred 348
  • 当我将两个脚本添加到 html 页面时..其中一个不起作用 [关闭]

    很难说出这里问的是什么 这个问题模棱两可 含糊不清 不完整 过于宽泛或言辞激烈 无法以目前的形式合理回答 如需帮助澄清此问题以便重新打开 访问帮助中心 我创建了两个 jquery 和 script 标签来日历确认 但是当它们位于单独的 ht
  • 在 WinForms 中将窗口保持在顶部并窃取焦点

    我意识到在正常情况下这将是完全不好的做法 但这仅适用于需要从条形码扫描仪 模拟键盘 获取输入的测试应用程序 问题是我需要在扫描时启动一些脚本 所以我需要在单击脚本运行它后窗口直接重新获得焦点 我尝试过使用Activate BringToFr
  • Arquillian 嵌入式 Glassfish 证书已过期

    8 月 14 日 Glassfish 使用的 gtecybertrust5ca 证书过期 导致我的 Arquillian 测试打印错误 这个问题与这个问题类似 启动 Glassfish 3 1 2 时日志中的证书已过期 除了 我正在使用Em
  • Pandas 数据精度[重复]

    这个问题在这里已经有答案了 默认情况下 数据框中的数值最多仅存储 6 位小数 我如何获得完整的精度 例如34 98774564765 存储为 34 987746 我确实想要完整的价值 0 00000565 存储为 0 除了将格式应用于每个数
  • 循环多个表执行同一个查询

    我有一个数据库 每天都会创建一个表来记录流程实例 这些表标记为 MESSAGE LOG YYYYMMDD 目前我想对所有这些表顺序执行相同的查询 我编写了下面的 PL SQL 但卡在第 10 行 如何针对此处的所有表成功执行 SQL 语句
  • 如何指定无分区密钥来删除文档DB Java SDK中的文档?

    我只有一个集合 当我尝试使用以下代码删除文档时 PartitionKey partitionKey new PartitionKey undefined RequestOptions requestOptions new RequestOp
  • 如何在 vb.net 中使用 OLE DB 更改 Crystal Reports 连接字符串?

    我有一个 Connection vb 其中存储了我的所有连接字符串并由整个程序使用 我是 Crystal Reports 的新手 并且我想根据我创建的连接字符串更改其连接字符串 我使用 MS SQL 2008 SQL Server Nati
  • 为什么局部类接受静态最终变量?

    我用谷歌搜索了这个广泛但无济于事 我似乎无法理解这个概念 为什么本地类接受静态最终字段 比如下面的例子 public void sayGoodbyeInEnglish class EnglishGoodbye public static f
  • 在 Visual Studio Code 和 Delve 调试器中使用标签调试 Go

    Answer 根据putus的回答 我想出了以下配置来一键构建和调试 首先 您需要添加一个任务来构建具有相应标签的二进制文件 See https go microsoft com fwlink LinkId 733558 for the d
  • Razor View Engine:表达式树可能不包含动态操作

    我有一个与此类似的模型 public class SampleModel public Product Product get set 在我的控制器中 我尝试打印时遇到异常 Html TextBoxFor p gt p Product Na
  • 使用hash时如何将id作为选择器?

    假设有以下 html div test1 div div test2 div 现在 以下内容不起作用 为什么 css test 1 color red jQuery test 2 css color blue 要使用任何元字符 例如 和 作
  • Urban Airship - 使用 NSURLConnection 发送推送

    我正在开发一个简单的原型 需要测试从一台设备向另一台设备发送推送通知 我已向 Urban Airship 发送电子邮件 要求为我的应用程序打开 允许从设备推送 他们确实打开了它 我正在尝试使用 NSURLConnection 从设备发送推送
  • Java ActionListener 错误:类型不兼容

    我在 JButton 上设置 ActionListener 时遇到一些问题 这是代码 package pipes import java awt import java awt event import javax swing public
  • 关闭窗口 - 如何确定窗口是如何打开的?

    在一页上 我有一个超链接target blank 在目标页面上 我有一个 关闭 按钮 它使用 JS 关闭新选项卡 窗口 如果用户点击超链接 我可以使用JS关闭打开的窗口 伟大的 如果用户右键单击链接并选择 在新选项卡中打开 我的 JS 事件