У меня есть приложение GWT, которое имеет два кадра (com.google.gwt.user.client.ui.Frame).Через Frame.setUrl (...) я могу загружать произвольные веб-страницы без проблем.Конечно, пользователь может затем нажать на ссылки на загруженных страницах, которые в свою очередь загружают соответствующие страницы?Как я могу отслеживать загруженные в данный момент страницы в обоих кадрах?
Ниже приведены мои текущие попытки с использованием двух типов слушателей;Я нашел фрагменты кода в Интернете.Оба события запускаются, но я все еще не знаю, как получить текущий загруженный URL
import com.google.gwt.event.dom.client.LoadEvent;
import com.google.gwt.event.dom.client.LoadHandler;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.EventListener;
import com.google.gwt.user.client.ui.Frame;
public class BrowserTabFrame extends Frame implements EventListener {
public BrowserTabFrame() {
super();
sinkEvents(Event.ONLOAD);
addLoadHandler(new LoadHandler() {
@Override
public void onLoad(LoadEvent event) {
System.out.println(event.getSource());
// <iframe style="visibility: visible;" id="ext-gen17" src="http://..." class="gwt-Frame"></iframe>
// however, the src attribute never changes
}
});
}
@Override
public void onBrowserEvent(Event event) {
super.onBrowserEvent(event);
if (DOM.eventGetType(event) == Event.ONLOAD)
System.out.println(event.getCurrentEventTarget());
// [object HTMLIFrameElement]
// no idea what to do with it
}
}
Спасибо за любые подсказки!
Christian