当用户离开页面时,我需要拦截,以便将他重定向到其他地方。
这将用于管理销售流程以避免回头。
我们尝试了类似
的内容Window.addCloseHandler(new CloseHandler<Window>() {
@Override
public void onClose(CloseEvent<Window> event) {
...
Window.open("main");
}
});
但这仅适用于Firefox。 在Chrome上,代码已执行但没有重定向。如果我更改为“_blank”,则会打开一个带有给定URL的新窗口,但这不是必需的行为。
答案 0 :(得分:1)
我认为这种行为符合规范(HTML5):
如果存在预先尝试导航浏览上下文,并且源浏览上下文与正在导航的浏览上下文相同,并且该尝试当前正在运行卸载文档算法,以及该URL的来源在该导航中加载的资源与此导航中加载的资源的URL的来源不同,然后中止这些步骤而不影响预先存在的浏览浏览上下文的尝试。