2010-07-07 10 views
6

Tengo una aplicación GWT y quiero para desplazarse hasta la parte superior de una página usando este método:Desplazamiento a la parte superior de una página en una aplicación GWT

public static native void scrollTop() /*-{ 
    $wnd.scroll(0, 0); 
}-*/; 

El método se llama en el onClick -method de un TreeNodeListenerAdapter:

new TreeNodeListenerAdapter() { 
    @Override 
    public void onClick(Node node, EventObject e) { 
    scrollTop(); 
    } 
} 

Esto no funciona y no sé qué. Cuando pongo una alerta dentro de mi método:

$wnd.alert("Treenode clicked"); 

consigo ver la alerta, pero la página no se desplaza. ¿Que me estoy perdiendo aqui?

+5

I No sé por qué su código no funciona, pero podría considerar usar el método estático de GW Window.scrollTo en lugar de su método nativo (consulte http://google-web-toolkit.googlecode.com/svn/javadoc/2.0 /com/google/gwt/user/client/Window.html). – aem

+0

Gracias por la información, pero eso tampoco funciona. –

+0

Cosas raras. Acabo de probar Window.scrollTo y funcionó bien en IE y FF4b1. ¿Con qué navegador estás teniendo problemas? –

Respuesta

14

Si desea desplazarse a la parte superior de una página simplemente hacer:

Window.scrollTo (0 ,0); 

Sólo asegúrese de que está importando el paquete correcto com.google.gwt.user.client.Window

+0

En realidad, ya no recuerdo cuál fue la solución a mi problema, pero lo resolví de alguna manera. Como esto normalmente debería funcionar, lo aceptaré como respuesta. –

Cuestiones relacionadas