2012-03-23 19 views
0

Ich habe this script verwendet, um ein jQuery Akkordeon zu erstellen. Schauen Sie sich die working jsFiddle here an.Vertikal Center jQuery Akkordeon

Es funktioniert gut, außer ich möchte das Akkordeon vertikal auf der Seite zentriert werden. Die Idee ist, dass, wenn sich die Höhe des Akkordeons ändert, die DIV ständig neu ausgerichtet wird, um vertikal zentriert zu sein. Das Akkordeon scheint sich von der Mitte der Seite aus zu erweitern, anstatt von oben nach unten zu rutschen.

Antwort

2

Sie können eine Methode schreiben, die den Akkordeon-Container zentriert und diese Methode aufruft, wenn die Gleitanimation gemäß Ihrer Logik abgeschlossen ist.

function centerIt(){ 
    var $accordion = $('.accordion'); 
    $accordion.css('top', ($(window).height() - $accordion.height())/2); 
} 

Arbeits Demo - http://jsfiddle.net/hDRMP/6/

+0

das funktioniert, obwohl es ein bisschen nervös ist. Ich hatte tatsächlich mehr Erfolg mit CSS 'vertical-align'. – colindunn

+0

@ShankarSangoli [kleine Korrektur für lange Akkordeons] (http://jsfiddle.net/hDRMP/17/). – Shef

+0

Es ist nervös, weil wir warten müssen, bis Akkordeon die Animation beendet und den Inhalt vollständig erweitert. Eine andere Alternative besteht darin, den oberen Bereich zusammen mit der Akkordeonanimation zu animieren, für die Sie die Höhe des aktiven Inhaltsfensters des Akkordeons herausfinden müssen. – ShankarSangoli