捕获浏览器窗口(仅)关闭事件

时间:2018-04-20 07:13:09

标签: javascript jquery

  var inFormOrLink;
$('a').on('click', function () { inFormOrLink = true; });
$('form').on('submit', function () { inFormOrLink = true; });

$(window).on('beforeunload', function (eventObject) {
  var returnValue = undefined;
  if (!inFormOrLink) {
    returnValue = "Do you really want to close?";
  }
  if (returnValue != undefined) {
    eventObject.returnValue = returnValue;
    return returnValue;
  }
});

参考:Browser close event

我尝试在Chrome版本65.0.3325.181中执行上述代码 它工作正常,但弹出窗口在重定向或提交表单时无法打开, 我想只在用户关闭标签时显示弹出窗口,有时浏览器显示弹出窗口,但有时标签会关闭而不显示弹出窗口。 我不知道为什么会这样。

0 个答案:

没有答案