2010-11-10 65 views
2

我有一个只有jQueryUI标签的网页,带有多个标签。返回到jQuery标签页中的最后一个垂直位置

其中一个选项卡可能非常长,因此它会导致浏览器显示垂直滚动条。当用户向下滚动选项卡,然后选择另一个非常小的选项卡时,浏览器将隐藏垂直滚动条。当他们回到长选项卡时,滚动条重新出现,但位于顶部位置

我需要长标签来记住最后一个位置,因此当用户返回标签页时,他们可以在切换标签之前继续阅读它们的位置。

是这样的可能吗?

+0

您可以发布一个例子吗?我不确定我完全理解发生了什么事。 – jjross 2011-01-12 22:20:01

回答

0

刚解决了这个问题。听起来它是一个webkit浏览器问题。

使用选项卡事件'tabsselect'来保存当前滚动pos和'tabsshow'事件来恢复它。

事情是这样的:

var _currentTab = 0; 
    var _currentScroll = 0; 
    $("#nav_tab").bind('tabsselect',function(e,ui){ 
     if (_currentTab === 0) { 
      _currentScroll = $('<your scroll item>').scrollTop(); 
     } 
     _currentTab = ui.index; 
    }).bind('tabsshow',function(e,ui){ 
     if (ui.index === 0) { 
      $('<your scroll item>').scrollTop(_currentScroll); 
     } 
    });