2016-11-03 3 views
0

Es gibt einen versteckten DIV (hat eine bestimmte Höhe) hat eine Menge auswählbarer Icon DIVs, Dieser DIV wird durch slideDown jQuery Funktion angezeigt, ich möchte in das ausgewählte verschachtelte Icon DIV scrollen (in der Mitte des versteckten div, das nicht wegen der Höhenbegrenzung angezeigt wird) nach slideDown .. soScrolle zu einem Element in einem versteckten div nach slideDown

Nach dem Klicken auf [trigger-btn] das versteckte DIV mit Hilfe der slideDown-Funktion, So testen wir offset(). top] von [DIV des auswählbaren Symbols] und wende es auf [scrollTop] von [icons-list] an, aber es ging an eine falsche Position.

<div class="elements-container"> 
    <div class="trigger-btn"></div> 

    <div class="hidden-div-wrapper"> 

     <select class="icons-library">...</select> 

     <div class="find-icon">...</div> 

     <div class="icons-list"> 

      <!-- Selectable Icon DIVs --> 

     </div> 
    </div> 
</div> 

Antwort

0

Dies ist, wie ich es für ein Projekt einmal https://jsfiddle.net/bimbonkens/3ssfvyms/

CSS

.slideable { 
    background: #000; 
    display: none; 
} 

.slideable div { 
    width: 50%; 
    margin: 0 auto 50px; 
} 

.buffer { 
    background: #fff; 
    height: 800px; 
} 

.target { 
    background: #cfc; 
    height: 1200px; 
} 

HTML

<div class="slideable"> 
    <div class="buffer"></div> 
    <div class="target"></div> 
</div> 

JS

tat

Auch wenn Sie eine Position haben: behoben; Header, dann müssen Sie für Account Höhe ist.

scrollTop: $('.target').offset().top - fixed_element_height 

bearbeiten

Geige mit der richtigen Lösung http://jsfiddle.net/bimbonkens/p9huerde/

Der entscheidende Moment ist hier, dass Offset() nach oben aus der Offset wird das obere Ende des ganzen Dokuments, um das zu berücksichtigen, subtrahierte ich die Position(). oben auf Elternteil div

+0

Vielen Dank für Sie, aber Sie scrollen den ganzen Körper, um das div zu zeigen, ich will das nicht. Ich möchte scro ll Einblick in ein Element innerhalb des versteckten div. –

+0

was meinst du? Ich scrollte zu einem Element innerhalb der ursprünglich versteckten Div, ist das nicht das, was du wolltest? Vielleicht versuchen Sie, Ihre Frage ein wenig umzuformatieren, ich habe Probleme zu verstehen T_T – Bimbonkens

+0

Vielen Dank, Sie haben Recht, ich habe vergessen zu erwähnen, dass das versteckte div eine bestimmte Höhe und die Symbole in Hunderten, so muss ich die Höhe angeben, ich möchte in scrollen Sehen Sie das Symbol nicht in der Mitte (zum Beispiel) innerhalb der versteckten div. –

Verwandte Themen