2012-03-13 14 views
0

私はリンクをクリックすると、ページの任意のポイントに多くのhrefsリンクを持つページを持っています<a href="#b">B</a>私はポイントBに行くべきです。しかし、私は履歴スタックを更新したくありません私がリンクをクリックすると、デフォルトでは/index.html#Bに変わります。履歴スタックの更新を避けるためにハイパーリンクの代わりにg:Anchorを使うことができますが、どうすれば私のページのB点に行くことができますか? index.ui.xml更新履歴なしのgwtアンカー

 <g:Anchor ui:field="_a">A</g:Anchor> 
     ... 
     <a name="a"></a> 
     <h3>Point A</h3> 
     <a name="b"></a> 
     <h3>Point B</h3> 
     ... 

index.java

@UiField 
Anchor _a; 
@UiHandler("_a") 
void onClickA(ClickEvent e){ 
    //how to goto point A in the page ?? 
} 

答えて

0

たぶん、あなたはwindow.scrollToは()メソッドを使用することができます。私のコードは次のようになりますか?

+0

(すべてではスクロールしませんでした)私がしようとしたが、それはうまくいきませんでした:onClickA(ClickEvent E){要素aElem = container.getElementById( "a"); if(aElem!= null){Window.scrollTo(aElem.getAbsoluteLeft()、aElem.getAbsoluteTop();}} – user468587

0

できることは、_a.getElement().scrollIntoView();です。これは少なくとも目に見えるようにアンカーにスクロールします。私はこれはすでに議論されている願っています

関連する問題