首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jQuery手风琴-它会滚动到打开项目的顶部吗?

jQuery手风琴-它会滚动到打开项目的顶部吗?
EN

Stack Overflow用户
提问于 2010-09-01 18:46:26
回答 11查看 53.5K关注 0票数 30

有了jQuery手风琴控件,当它离开屏幕时,我如何让它滚动到我选择的项目?

在以下情况下:

  • 我有一个手风琴项目,里面的东西比可观看的窗口还大。
  • 我向下滚动到第二个手风琴项目
  • 我点击第二个手风琴项目来显示它。
  • 第一个手风琴选项折叠,第二个打开,但滑出屏幕。

手风琴是否有滚动到第二项的选项?

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2010-09-01 20:19:42

您可以尝试使用scrollTo jQuery插件。它让你做这样的事情:

代码语言:javascript
运行
复制
$.scrollTo('div#foo'); // scroll the browser window so div#foo is in view
$('div#foo').('#bar'); // scroll within div#foo so #bar is in view

ScrollTo()绑定到accordionactivate事件,如下所示:

代码语言:javascript
运行
复制
$('#youraccordion').bind('accordionactivate', function(event, ui) {
  /* In here, ui.newHeader = the newly active header as a jQ object
              ui.newContent = the newly active content area */
  $( ui.newHeader ).ScrollTo(); // or ui.newContent, if you prefer
});

何时触发accordionactivate事件?

激活面板后触发(动画完成后)。如果以前折叠过手风琴,那么ui.oldHeaderui.oldPanel将是空的jQuery对象。如果手风琴正在折叠,ui.newHeaderui.newPanel将是空的jQuery对象。

参考资料:jQuery UI手风琴

票数 21
EN

Stack Overflow用户

发布于 2014-10-15 08:20:02

它对我有效并经过测试,

代码语言:javascript
运行
复制
$( "#accordion" ).accordion({
    heightStyle: "content",
    collapsible: true,
    active: false,
    activate: function( event, ui ) {
        if(!$.isEmptyObject(ui.newHeader.offset())) {
            $('html:not(:animated), body:not(:animated)').animate({ scrollTop: ui.newHeader.offset().top }, 'slow');
        }
    }
});

http://jsfiddle.net/ilyasnone/aqw613em/

票数 30
EN

Stack Overflow用户

发布于 2012-03-05 18:05:47

由于我希望折叠为真,所以我添加了一个if测试,以取消正在折叠的所有项的错误。我也不希望标题完全位于页面的顶部,因此我将scrollTop位置降低了100:

代码语言:javascript
运行
复制
  $(document).ready(function() {
    $(".ui-accordion").bind("accordionchange", function(event, ui) {
      if ($(ui.newHeader).offset() != null) {
        ui.newHeader, // $ object, activated header
        $("html, body").animate({scrollTop: ($(ui.newHeader).offset().top)-100}, 500);
      }
    });
  });
票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3621161

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档