【问题标题】:How to handle "open in new tab" event?如何处理“在新标签页中打开”事件?
【发布时间】:2013-03-14 18:41:10
【问题描述】:

我正在开发一项服务,该服务在页面上呈现一系列资源。 资源 - 是数据库中的一条记录,包含“url”和“visited”字段。

当用户点击资源 url 时,将通过发送 ajax PUT 请求在数据库中将其标记为“visited: true”。 它运行良好,直到用户决定在新选项卡中打开 url。 当我打开给定 url 的上下文菜单并选择“在新选项卡中打开”时,javascript 不会捕获此事件,并且不会更新数据库中的记录。

在这个问题Javascript Event for "Open in new Tab" 中,他们建议将“click”处理程序更改为“onmousedown”。 但是,这个处理程序只捕获打开上下文菜单,甚至当我关闭它时,没有选择任何东西。

是否有任何标准方法来处理“在新标签页中打开”事件?

谢谢!

【问题讨论】:

    标签: javascript browser


    【解决方案1】:

    首先将资源 URL 重定向到您的网站 (yoursite.com/record_click?to=actual.url)。当用户点击 URL 时,无论采用何种方式,您都可以跟踪 URL 的打开情况——甚至可能不再需要 AJAX 请求。

    【讨论】:

      猜你喜欢
      • 2012-09-04
      • 1970-01-01
      • 2019-09-09
      • 1970-01-01
      • 2021-11-24
      • 2020-07-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多