Jak można uzyskać wszystkie węzły liści, powiedzmy divy, z DOM? Próbuję wymyślić optymalne rozwiązanie, jeśli nie ma w tym celu łatwego i magicznego selektora. Myślałem o użyciu "reachedElem.find (" div "). Length == 0", ale nie jestem pewien, czy to jest właściwy kierunek. Dowolny pomysł? DziękiJaki jest najskuteczniejszy sposób uzyskania węzłów liścia z jQuery
14
A
Odpowiedz
32
Możesz iść z następujących Selektor
$('div:not(:has(*))')
Above selektor wybierze wszystkie DIV, którzy nie mają żadnych dzieci.
10
Jeśli naprawdę chcesz coś skutecznego, uniknąć skomplikowanej :not(:has(*))
selektora:
$("div").filter(
function(index) {
var isLeaf = $(this).children().length === 0;
return isLeaf;
}
);
znalazłem się to dwa razy tak skuteczny jak sugestia eHussain, albo nawet szybciej.
+0
Jedną z szybszych metod niż '.children()' jest '.find (': first')'. –
Powiązane problemy
- 1. Jaki jest najskuteczniejszy sposób uzyskania dostępu do wartości kontrolki?
- 2. Jaki jest najskuteczniejszy sposób uzyskania czystej piaskownicy git?
- 3. Jaki jest najskuteczniejszy sposób uzyskania pierwszego elementu z tablicy asocjacyjnej w JavaScript?
- 4. Jaki jest najskuteczniejszy sposób sortowania NSSet?
- 5. Jaki jest najskuteczniejszy sposób tworzenia instancji BigInteger z wartości int?
- 6. Jaki jest najskuteczniejszy sposób uzyskania kodu źródłowego strony internetowej w C?
- 7. Jaki jest najskuteczniejszy sposób modyfikacji elementów DOM i ograniczenia przepływu?
- 8. Jaki jest najskuteczniejszy sposób kopiowania zewnętrznego dostarczonego bufora do bajtów
- 9. Jaki jest najskuteczniejszy sposób zarządzania dużym zestawem linii w OpenGL?
- 10. Jaki jest najskuteczniejszy sposób reprezentowania skończonych (nierekurencyjnych) wartości typu algebraicznego?
- 11. Jaki jest najskuteczniejszy sposób tworzenia słownika słupków Dfr.
- 12. Jaki jest najskuteczniejszy sposób obcięcia numeru dla określonej dokładności?
- 13. Jaki jest najskuteczniejszy sposób zliczania wierszy w tabeli w SQLite?
- 14. Jaki jest najskuteczniejszy sposób zarządzania dużymi zestawami danych za pomocą Javascript/jQuery w IE?
- 15. Jaki jest lepszy sposób uzyskania całkowitego czasu wykonania aplikacji Node.js?
- 16. Jaki jest najlepszy sposób uzyskania identyfikatora SID obecnego użytkownika?
- 17. Doctrine 2 Jaki jest zalecany sposób uzyskania dostępu do właściwości?
- 18. Jaki jest prawidłowy sposób uzyskania zainstalowanego katalogu głównego Drupala?
- 19. Jaki jest sposób Objective-C uzyskania zerowego boola?
- 20. Jaki jest najlepszy sposób uzyskania cookie według nazwy w JavaScript?
- 21. Jaki jest właściwy sposób uzyskania konta na CPAN?
- 22. Jaki jest najskuteczniejszy sposób eksportowania wszystkich stałych (zmienne tylko do odczytu) z modułu Perla
- 23. Jaki jest najskuteczniejszy sposób zapisu instrukcji select z podzapytaniem "not in"?
- 24. Jaki jest najskuteczniejszy sposób wyodrębnienia daty z sygnatury czasowej w PostgreSQL?
- 25. Jaki jest najlepszy sposób wykonywania jQuery .change()
- 26. Jaki jest najlepszy sposób na usunięcie wiersza tabeli z jQuery?
- 27. Jaki jest najskuteczniejszy sposób czytania tylko pierwszego wiersza pliku w węźle JS?
- 28. Jaki jest najskuteczniejszy sposób na przeprowadzanie wieloplatformowych, deterministycznych symulacji w Haskell?
- 29. Jaki jest najskuteczniejszy sposób wydajnego analizowania pliku CSV za pomocą awk?
- 30. Jaki jest najskuteczniejszy sposób wstawiania słowników/list w języku Python do bazy danych SQL?
Dzięki. Czy ma to również zastosowanie, jeśli chcę znaleźć wszystkie divy, które są "ostatnim" elementem div w drzewie? Nie jestem pewien, czy poprawiam to poprawnie. Powiedzmy, że eliminujesz wszystkie elementy, które nie są div z DOM. Teraz byłoby tak samo z pytaniem o wszystkie liście ... – Ricardo
@Ricardo, każdy element DOM bez dzieci to liść. Jeśli chcesz tylko szukać liści pod konkretnym elementem, najpierw wybierz element, a następnie umieść selektor eHussaina w metodzie .find(), aby wyszukać wszystkich przodków. – Soviut
dzięki Soviut, ale nie chodziło mi o wat. Chodzi mi o to, że chcę wybrać "wszystkie" divy w DOM, które nie mają więcej "divów" jako dzieci. Zasadniczo wszystkie najniższe poziomy div. – Ricardo