2013-01-21 2 views
5

Ich muss einige Anpassungen an einem Div css vornehmen. Aber ich kann dies nicht mit der Methode onBind() oder onReveal() tun, weil der HTML-Code nicht geladen wird, wenn diese zwei Methoden aufgerufen werden.Hat es eine Methode, die aufgerufen wird, nachdem der HTML-Ladevorgang abgeschlossen ist, wenn ein neuer Presenter bei GWT und GWTP aufgerufen wird?

Also ich frage mich, eine Möglichkeit, eine Methode automatisch aufzurufen, wenn die Änderung von meinem HTML (wenn ein Presenter aufgerufen wird der HTML-Code geändert werden muss, weil neue Widgets hinzugefügt werden) laden.

Dies ist die Methode, die ich anrufen müssen:

private void hidePopup(){ 
    $(".olLayerGooglePoweredBy, .olLayerGoogleV3, .gmnoprint"). 
    css(CSS.VISIBILITY.with 
     (com.google.gwt.dom.client.Style.Visibility.HIDDEN)); 
} 

Antwort

1

Die Methode Entrypoint onModuleLoad() diese Methode ist - das aufgerufen wird, wenn der Rest der Seite geladen wird. GWT startet nicht wie die meisten JS-Frameworks, wo Sie JS schreiben können, während die Seite noch geladen wird. Stattdessen kann davon ausgegangen werden, dass der Rest der Seite bereits bereit ist, wenn onModuleLoad aufgerufen wird.

+0

Es kann nicht getan werden. Ich benutze GWT-Platform, die Methode onModuleLoad() wird nur EINMAL vom Programmierer aufgerufen und lädt alle Apps. Ich brauche eine Methode auszuführen oder im Presenter oder im ViewImpl. [Check Presenter LifeCycle] (http://code.google.com/p/gwt-platform/wiki/GettingStarted#Presenter_lifecycle) –

+0

Rechts - die HTML-Seite wird nur einmal geladen, dann wird onModuleLoad aufgerufen. Wenn jeder Ihrer Moderatoren dies ändert, wird die Seite nicht erneut geladen, sondern nur ein neuer Inhalt. Sobald Sie diese Widgets zur Seite hinzufügen, wird dieser neue HTML 'geladen' und kann so manipuliert werden. Ihre Frage (gerade jetzt) ​​fragt, wie Sie etwas beim Laden der Seite aufrufen - es klingt wie das, was Sie * wissen möchten "wann sich etwas ändert" oder "wann meine App einen neuen Präsentator/eine neue Ansicht geladen hat". –

+0

Es wird einmal geladen, aber es ändert sich, wenn Sie einen Moderator anrufen. Ich stimme Ihnen zu, ich werde meine Frage ändern. –

Verwandte Themen