簡體   English   中英

如何在GWT中滾動到div ID

[英]How to scroll to a div id in GWT

我有一個帶有iframe的網頁,其中正在運行gwt應用程序。 該網頁具有<div id="head"> 無法在iframe中滾動(預期),因此網頁的高度例如為1000px。 在最底部有一個按鈕,我希望當有人單擊該按鈕時(請注意:該按鈕在gwt應用程序中),然后我要滾動到頂部。

這意味着iframe需要強制父窗口滾動到頂部。 我用這樣的jsni函數嘗試過:

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

但這沒有用。 因此,我的新想法是滾動到div id“ header”。 有誰知道如何做到這一點?

我這樣嘗試過:

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

但這似乎不起作用(因為它應該以JSNI的方式進行?)。

感謝您的任何投入!

它失敗是因為GWT在iframe中運行,因此document引用了GWT的iframe,而不是您的“ HTML宿主頁”。 您必須在JSNI中使用$doc來引用文檔(就像$wnd而不是window )。

但是您實際上並不需要JSNI; 普通的舊Java / GWT將執行以下操作:

Document.get().getElementById("header").scrollIntoView();

終於我找到了解決方案。 您必須在網站(iframe中的網站)頂部設置錨點。 請查看我的其他帖子以獲取更多詳細信息。

附言:我希望您看到這篇文章的重要性並予以贊揚。 這將為其他人節省大量時間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM