2

gwt アプリケーションが実行されている iframe を含む Web ページがあります。ウェブページには<div id="head">. iframe でスクロールすることはできません (意図された) ため、Web ページの高さは、たとえば 1000px です。一番下にボタンがあり、誰かがそのボタンをクリックしたときに(注:ボタンはgwtアプリケーションにあります)、一番上までスクロールしたいです。

つまり、iframe は親ウィンドウを強制的に上にスクロールする必要があります。次のようなjsni関数で試しました:

    public static native void scrollToTop()  /*-{
        $wnd.top.scrollTo(0,0);
    }-*/;

しかし、これはうまくいきませんでした。したがって、私の新しいアイデアは、div id「ヘッダー」までスクロールすることです。これを達成する方法を知っている人はいますか?

私はこのように試しました:

document.getElementById('header').scrollIntoView();

しかし、それは機能していないようです (JSNI の方法である必要があるため?)。

ご意見ありがとうございます。

4

2 に答える 2

5

documentGWT は iframe で実行されるため、「HTML ホスト ページ」ではなく、GWT の iframe を参照するため失敗します。$docドキュメントを参照するには、JSNI で使用する必要があります (の$wnd代わりにwindow)。

しかし、実際には JSNI は必要ありません。普通の古い Java/GWT は次のことを行います。

Document.get().getElementById("header").scrollIntoView();
于 2011-10-12T15:53:08.100 に答える
0

Finally I found the solution. You have to set an anchor at the top of your website (the website inside the iframe). Please look at my other post for more details.

P.S. I hope you see the importance of this post and upvote it. It will save a lot of time for other people.

于 2011-10-12T19:26:27.447 に答える