Ich habe ein Problem - ich habe vergessen zu programmieren! Ich habe eine angularJS-Direktive, die sich auf einem Eltern-Wrapper-Tag (einem DIV) befindet, und in meiner Direktive möchte ich die Kinder durchlaufen (erste Child-DIVs). Ich habe folgendes
%Vor%Nun möchte ich in meiner Anweisung die ersten untergeordneten divs durchlaufen (es könnten viele davon sein, aber ich sehe 10 Benutzer in meiner geladenen Ansicht) und bestimmte Prüfungen und Modifikationen in meiner Direktive durchführen, indem ich die Datenattribute verwende, das $ location-Objekt und potentiell viele mehr ... aber ich kann mich nicht erinnern, wie ich die ersten untergeordneten divs durchlaufen habe, ich scheine Fehler mit allem, was ich versucht habe, zu bekommen ... bisher habe ich das, was nicht funktioniert! Im folgenden Beispiel möchte ich nur die Daten-ID der ersten untergeordneten Knoten in die Konsole schreiben
%Vor%Ich bin verwirrt ... bitte helfen!
Wenn Sie versuchen, auf die Eigenschaft children
des HTMLEelements zuzugreifen dann sollten Sie es wie Eigentum lesen.
Eine andere Sache ist, dass element
bereits eine Instanz von angular.element
ist, also brauchen Sie sie nicht mehr zu umbrechen:
Allerdings gibt es eine Reihe von Komfortmethoden, die angular.element
zur Verfügung stellen. Diese Methoden replizieren einige Methoden von jQuery, einschließlich der Methode $.fn.children
. In diesem Fall können Sie alternativ
Und schließlich gibt es noch eine weitere Einschränkung: ngRepeat
rendert seine Elemente nach Ihrer benutzerdefinierten Anweisung, sodass Sie noch nicht auf children
collection zugreifen können. Die einfachste Lösung besteht darin, den Code in $timeout
service einzubinden, wodurch die Logik im nächsten Digest-Zyklus ausgeführt wird, der nach Abschluss von ngRepeat
garantiert ist:
Demo: Ссылка
Tags und Links javascript angularjs