隐藏面板时如何设置ScrollPanel滚动位置

时间:2014-03-11 11:03:19

标签: gwt

我有一个ScrollPanel,我想在隐藏时重置他的滚动位置。 为此,我调用scrollTop方法。正如我所看到的,当隐藏ScrollPanel时它无效。

这是一个示例代码:

public void onModuleLoad() {
    StringBuilder html = new StringBuilder();
    for (int i = 0; i<1000; i++) html.append("row "+i+"<br>");

    HTMLPanel content = new HTMLPanel(html.toString());

    final ScrollPanel scrollPanel = new ScrollPanel(content);
    scrollPanel.setHeight("200px");
    RootPanel.get().add(scrollPanel);


    RootPanel.get().add(new Button("TEST", new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            scrollPanel.scrollToTop();
            scrollPanel.setVisible(false);
            scrollPanel.scrollToBottom();
            scrollPanel.setVisible(true);
        }
    }));
}

单击TEST按钮后,ScrollPanel保持最高位置。 知道如何在隐藏时滚动它吗?

1 个答案:

答案 0 :(得分:0)

您无法滚动隐藏元素,因为它没有偏移位置,即&#34; top&#34;和&#34;底部&#34;将返回零。

查看可能的解决方案:http://blog.gaijindesign.com/jquery-scrolltop-to-a-hidden-element/