J'ai un scénario de mise en page où une flèche fixe vers le bas est conçue pour faire défiler un utilisateur vers la prochaine section pleine hauteur.Traverser l'arbre DOM pour le prochain cours; frère ou fille
Chaque section a une classe (.section) Cela fonctionne et est assez simple lorsque chaque section est tous les frères et sœurs. Il y a un bloc de code qui nécessite que ces sections soient dans un autre div.
J'ai créé un codepen pour illustrer cette http://codepen.io/chrisando/pen/GqoORa/
<a class="down">DOWN</a>
<div class="section">
Section 1
</div>
<div class="section">
Section 2
</div>
<div class="container">
<div class="section">
Section 3
</div>
<div class="section">
Section 4
</div>
</div>
<div class="section">
Section 5
</div>
Ma logique jusqu'ici a été. - Ajoutez une classe (.section-past) à chaque section après avoir passé le haut de la fenêtre. - Lorsque vous cliquez sur le lien descendant, recherchez le dernier (.section-past) puis faites défiler jusqu'à la section suivante.
Cela tombe en panne quand il faut aller dans le conteneur div pour la section suivante; ou lorsque vous sortez du conteneur pour la section suivante.
J'ai expérimenté avec la fonction .index() pour jquery, mais j'ai fini avec des solutions très compliquées qui ont échoué. Également examiné des instructions conditionnelles imbriquées, mais encore une fois fini avec un code de défaillance très gonflé. En espérant que quelqu'un puisse me diriger vers la bonne logique et la bonne solution.
Merci Chris
https://jsfiddle.net/arunpjohny/4o3rj462/1/ –
Merci Arun, fonctionne un régal. Je soupçonnais la solution avec au sein de l'index. :) –