So blättern Sie zum Element li in einer ul-Liste

8

Ich habe eine ul Liste innerhalb eines div mit li Elementen und innerhalb der li Elemente ist ein einzelnes Kontrollkästchen. Ich habe die ID für die Checkboxen. Ich möchte also das elterliche li-Element des Kontrollkästchens abrufen und zu seiner Position blättern. Und ich kann es nicht funktionieren lassen.

Mein HTML ist so:

%Vor%

Ich habe diese beiden Methoden ausprobiert und sie funktionieren nicht für mich:

%Vor%     
kyleb 12.10.2012, 18:19
quelle

7 Antworten

3

Ich hatte einen anderen Dev-Freund von mir, der mir half, und wir kamen mit dem Ergebnis und es funktioniert, kein Animieren, ich könnte es tun, ich brauche es einfach nicht.

%Vor%     
kyleb 13.10.2012, 16:54
quelle
5

Wenn jemand eine Vanilla JS-Version benötigt, funktioniert das Folgende gut für mich, der Wert 50 ist nur so, dass ich das ganze Element zeige, wenn ich ganz oben in der Liste bin. Sie können das einstellen.

%Vor%     
Darren 23.06.2014 08:01
quelle
1

Alte Frage, aber hier ist eine reine js-Funktion, die den LI nach oben scrollt, wenn er sich momentan über dem oberen befindet, und unten, wenn er sich derzeit unter dem unteren befindet. Dies ermöglicht ein reibungsloses Scrollen des ULs, wenn Sie die Auf- und Abwärtspfeile zum Scrollen verwenden (mit addEventListener für Keydown- und Keyup-Ereignisse).

%Vor%     
mseifert 31.01.2016 21:18
quelle
0

Ein Quirck zum Spaß:

%Vor%

Was es tut, ist, die URL-Teile zu bekommen und sie mit dem eigentlichen Anker zu deinem Element zurückzusetzen

Könnte in den meisten Fällen funktionieren, wenn Ihre Site keine Art von Webapp ist =)

Bearbeiten: Es gibt keine Rundreise in modernen Browsern, der einzige Teil der sich ändernden URL ist der Anker. Meine Überlegung, keine Webapp zu sein, besteht darin, dass diese Art von Websites normalerweise Anker und Geschichte bearbeitet.

    
Fabiano PS 12.10.2012 18:33
quelle
0

Hier ist eine einfache Demo, die jQuery position() verwendet, um die LI-Position innerhalb der übergeordneten UL zu erhalten, und dann animate() verwendet, um das Kontrollkästchen in der Ansicht

zu durchlaufen

Ссылка

API-Referenzen:

Ссылка http://api.jquery.com/animate/

    
charlietfl 13.10.2012 01:01
quelle
0

Ich habe das mit dem Element.scrollIntoView () -Ansatz behoben:

Ссылка

Es hat in Chrome, Firefox und Internet Explorer funktioniert - ich habe es in keinem anderen Browser getestet.

    
quelle
0

promptAnswerBlock - & gt; ul-Element-ID

$ ('# promptAnswerBlock') scrollTop ($ ('# promptAnswerBlock') [0] .scrollHeight + 150);

150 ist nur ein Offset-Wert

können Sie nach Ihren Anforderungen anpassen

    
sohan kumawat 05.08.2016 07:16
quelle

Tags und Links