I struggled with this for a while until I found this great StackOverflow thread: http://stackoverflow.com/questions/3621161/jquery-accordion-will-it-scroll-to-the-top-of-the-open-item
What worked for me:
$("#accordion").accordion({autoHeight: false,active: 0}); $(".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); } });
There’s a lot of animation going on but it does exactly what is says on the tin.