Akordeon jQuery, przewiń początek klikniętej karty do góry, nie działa, jeśli rozwinięta karta znajduje się powyżej klikniętej?

Mam trochę problemów z tym, aby mój akordeon jquery zrobił to, co chcę.

Zawsze chcę, aby kliknięta karta była przewijana do ustalonej liczby pikseli od góry strony, a ja trochę to działa. Ale gdy aktywna karta znajduje się powyżej klikniętej zakładki i jeśli strona jest już przewijana nieco w dół, góra i części zawartości klikniętej karty przewijają się w górę nad górną stroną.

Oto co mam:

$(function() {
    $("#accordion").accordion({
        autoHeight: false,
        collapsible: true,
        heightStyle: "content",
        active: 0,
        animate: 300
    });
    $('#accordion h3').bind('click',function(){
        theOffset = $(this).offset();
        $('body,html').animate({ 
            scrollTop: theOffset.top - 100 
        });
    });
});

Tutaj jestskrzypce aby zilustrować mój problem,

Na przykład, rozwinąć „sekcję 2”, przewinąć w dół i kliknąć zakładkę „sekcja 3”, a to wszystko przewinie stronę, w przeciwnym razie działa.

A jeśli zamknięcie aktywnej karty przed otwarciem nowej również działa poprawnie, to zakładam, że ma to coś wspólnego z wysokością zakładki zwijania, która przesuwa przewijanie do górnej funkcji !?

Mam nadzieję, że ktoś może pomóc, prawdopodobnie podchodzę do tego niewłaściwie. Naprawdę nie wiem, co tak naprawdę robię, ponieważ moje umiejętności jquery są ograniczone do podstawowego zrozumienia wklejania! ^^

Z góry dziękuję i cała pomoc i wskazówki więcej niż mile widziane! :)

Twoje zdrowie

questionAnswers(2)

yourAnswerToTheQuestion