Mam mnóstwo div z klasą testimonial
i chcę użyć jquery, aby przejść przez nie w pętli, aby sprawdzić dla każdego div, czy określony warunek jest spełniony. Jeśli to prawda, powinien wykonać akcję.
Czy ktoś wie, jak bym to zrobił?
javascript
jquery
jquery-selectors
geoffs3310
źródło
źródło
false
spowoduje zatrzymanie iteracji.$(this)
dostępu do obiektu ... obiektobj
DOM nie pozwala na przykład na bezpośrednie dołączanie funkcjiobj.empty()
Spróbuj tego...
źródło
break;
nie złamie się. Musisz użyćreturn false;
W dzisiejszych czasach jest to dość proste bez jQuery.
Bez jQuery:
Po prostu wybierz elementy i użyj
.forEach()
metody do iteracji nad nimi:W starszych przeglądarkach:
źródło
Wypróbuj ten przykład
HTML
Kiedy chcemy uzyskać dostęp do tych,
divs
które majądata-index
więcej niż2
wtedy, potrzebujemy tej jquery.Przykładowy skrzypce
źródło
możesz to zrobić w ten sposób
źródło
Funkcja .eq () jQuery może pomóc ci przechodzić przez elementy z podejściem indeksowanym.
źródło
źródło
$(ind)
.Możesz to zrobić zwięźle, używając
.filter
. Poniższy przykład ukryje wszystkie div .testimonial zawierające słowo „coś”:źródło
Dzięki prostej pętli for:
źródło
Bez aktualizacji jQuery
źródło
Być może brakuje mi części pytania, ale wierzę, że możesz po prostu to zrobić:
Wykorzystuje każdą metodę jQuery: https://learn.jquery.com/using-jquery-core/iterating/
źródło
źródło
Bardziej dokładnie:
źródło
W JavaScript ES6 .forEach () nad podobną do tablicy kolekcją NodeList podaną przez
Element.querySelectorAll()
źródło
doc..torAll.forEach()
wystarczy?[...ArrayLike]
był używany dla zapytania czasowego SelectorAll nie miał obsługi.forEach
. @aabbccsmithMożesz użyć metody jQuery $ each, aby przeglądać wszystkie elementy ze świadectwem klasy. i => to indeks elementu w kolekcji, a val daje obiekt tego konkretnego elementu i możesz użyć „val”, aby uzyskać dostęp do właściwości tego elementu i sprawdzić swój stan.
źródło