2012-02-09 65 views
0

我正在GWT中編寫一個網頁,我使用以下結構:我有一個VerticalPanel作爲包含一些gwt按鈕的navigationmenu。然後我有一個VerticalPanel作爲contentPanel,其中可以加載不同的HTML-Pages(通過ClientBundle)。 contentPane包含一個單獨的gwt-HTML-Object,其中加載了HTML文件。 現在我在navigationmenu中有了一些按鈕,我想在contentPanel中使用像HTML錨點一樣的東西。那可能嗎? 因此,當一個更長的HTML文件被加載到contentPanel中,並且我點擊其中一個按鈕時,該頁面將跳轉到HTML對象中的特定錨點。 任何想法如何實現這一點?在GWT中的HTML對象錨錨

回答

1

嗯,我覺得應該有兩種解決方案:

如果使用錨部件或普通的HTML錨在導航菜單中,你可以做到這一點,就像一般的HTML:

導航菜單<a href='#myAnchor'>

如果你真的想使用GWT按鈕,你可能必須使用Window.Location。像這樣的東西可能會奏效強硬。我還沒有嘗試過自己:

button.addClickHandler(new ClickHandler() { 
    public void onClick(ClickEvent event) { 
     Window.Location.assign('#myAnchor'); 
    } 
}); 

另外,您可以設置的錨的標識在你的ContentPanel <a id='myAnchor'>和使用下面的函數滾動到錨。

Element elem = DOM.getElementById('myAnchor'); 
    if (elem != null) { 
     elem.scrollIntoView(); 
    } 

我推薦第一種方法。

+0

謝謝你...與DOM的想法是我一直在尋找:) – 2012-02-10 10:35:25