【问题标题】:Onbeforeunload - windows assign doesn't work in ChromeOnbeforeunload - Windows 分配在 Chrome 中不起作用
【发布时间】:2012-07-20 15:48:44
【问题描述】:

我正在尝试将“留在页面上”按钮重定向到自定义地址。我找到了这段代码,它可以在 OSX 和 PC 上的 Firefox 中运行,但在 Chrome 中它什么也没做。

我错过了什么吗?

$(文档).ready(函数() { window.onbeforeunload = 函数(){ location.assign('http://www.nba.com'); 返回“打球”; } });

【问题讨论】:

  • 请不要那样做...不会带来很好的用户体验!!在 onbeforeunload 中你可以做什么没有标准。
  • 但它是一个销售页面,所以用户有点习惯那些弹出警告。它不会将它们重定向到侧面之外的任何地方,我只是希望他们在决定关闭 index.html 时查看“other.html”页面
  • 这样想,我在看buy_me.html,但我不喜欢它,所以我在网址栏中输入“google.com”,然后buy_me.html加载页面buy_me.html onbeforeunload ...所以我关闭了浏览器,而是buy_me.html 加载了页面buy_me.html ...我知道您不会专门这样做,但这本质上就是您所要求的。当用户关闭浏览器窗口或离开您的页面时,无法加载新页面(除非浏览器较旧或尚未使用)

标签: javascript google-chrome onbeforeunload


【解决方案1】:

如果用户想要离开您的页面或关闭浏览器窗口,那么您所能做的就是(1) Let Them [preferred](2) tap into onBeforeUnload event,这只不过是“您确定吗?”弹出消息,允许用户留在页面上或不留在页面上。

上面写着return "Play ball" 的代码决定了要在“你确定吗?”中显示的消息。对话。如果您不返回字符串,那么您可以在退出之前执行清理代码,而用户不会看到弹出警告。 chrome 很聪明,不会让窗口导航代码在 return 语句之前执行。

您绝对不应该将 onBeforeUnload 用于页面重定向/站点导航。

如果您发布额外的代码以及您想要完成的工作,那么您可能会遇到更好的事件。

【讨论】:

  • 没有什么要发布的了,这是一个基本的 HTML 页面,一个带有信息的包装器 DIV,并且由于它是一个销售页面,我希望用户在之前最后看一下“other.html”页面他们离开。我知道我可以调用 DIV,但客户的具体愿望是在用户离开 index.html 主页面时加载另一个 URL,“other.html”。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-10-12
  • 2021-03-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-18
相关资源
最近更新 更多