2016-08-06 15 views

Antwort

4

Es liegt daran, dass nur ein Element in der Liste von $("#mainlist") zurückgegeben wird. Sie wählen die letzte #mainlist, die Ihre ul ist.

Die Methode .last() wählt das letzte Element in einer Liste von DOM-Elementen aus, nicht das letzte Kind der ausgewählten Elemente.

Vom jQuery docs:

ein jQuery Objekt gegeben, dass eine Reihe von DOM-Elemente darstellt, die .last() Methode erstellt ein neues Objekt jQuery von dem letzten Element in die eingestellt.

Sie möchten etwas wie $('#mainlist li').last().hide().fadeIn(200); stattdessen.

+1

Hut ab vor Mr. Beavis! – undefined

1

Es ist, weil Ihr #mainlist Element ein anderes Kind/Verpackung <ul> vor den Listenelementen (so dass es die Verpackung <ul>, also alle Elemente versteckt) hat. versuchen, genauer gesagt mit dem Selektor Vielleicht

$("#mainlist li").last().hide().fadeIn(200); 

EDIT By the way, dies setzt voraus, Ihre <ul> mit <li> Tags gefüllt ist.