GWT后退按钮浏览器

msa*_*aif 5 gwt browser-history

例如,当前页面是www.google.com.但是我在地址栏中输入了一个不同的网址,然后点击了.该站点具有完整的GWT代码.

但我想回到www.google.com的上一页.所以我点击了浏览器的后退按钮.但是如何从当前的GWT代码中获取后退按钮的事件.我可以在当前页面的GWT中设置任何后退事件处理程序吗?一个通知我按下后退按钮的警报.

GWT有什么解决方案吗?

Igo*_*mer 5

Window.ClosingEvent:

在浏览器窗口关闭或导航到其他站点之前触发.

另一个选项是History.addValueChangeHandler,它监听浏览器历史堆栈中的更改(有关详细信息,请参阅文档).


Chr*_*her 5

给Igor和Alex +1.如果您想使用ClosingHandler,可以使用以下代码:

    Window.addWindowClosingHandler(new Window.ClosingHandler() {

        @Override
        public void onWindowClosing(final ClosingEvent event) {
            event.setMessage("Don't you think my site is awesome?");
        }
    });
Run Code Online (Sandbox Code Playgroud)

来自ClosingHandler.onWindowClosing()的Javadoc的一些信息:

 /* Fired just before the browser window closes or navigates to a different
  * site. No user-interface may be displayed during shutdown. */
Run Code Online (Sandbox Code Playgroud)


Ale*_*lli 1

您可以实现该HistoryListener接口:每次单击后退和前进按钮时onHistoryChanged都会调用您的类的方法(使用令牌)。String然后,您可以与History类进行交互,该类具有例如back()“返回”的静态方法。然而,我不完全确定它是否会一直追溯到GWT 开始之前(但它确实值得尝试;-)。