0

我们有一个网络应用程序,并希望浏览器检测尝试打开新链接。一个典型的用例是该用户打开我们的应用程序;他们点击他们电子邮件中的链接 - 而不是在新窗口中打开此链接,我们希望在我们的应用程序中打开一个内部选项卡。使用浏览器扩展检测打开特定网站

当然,这是不可能的,没有扩展;但可以使用FF/Chrome/Safari/IE的浏览器扩展吗?我们需要扩展来检查正在创建的新标签的URL是否符合简单匹配 - 如果匹配以防止创建新标签,请在我们正在使用的标签中运行js请求,然后将视图切换到该标签。

回答

1

对于Safari,答案是肯定的。您可以收听beforeNavigate事件。该事件具有url属性。如果您然后拨打event.preventDefault(),则不会创建新选项卡。

一个潜在的问题是,您可能无法区分由其他应用程序(例如电子邮件客户端)打开的新选项卡和由浏览器自身打开的选项卡(例如,用户命令单击链接时在新标签中打开它)。如果这对你很重要。

相关问题