Wie kann ich eine Direktive ausführen, nachdem der Dom das Rendern beendet hat?

Ich habe ein scheinbar einfaches Problem ohne erkennbare(durch Lesen der Angular JS-Dokumente) Lösung.

Ich habe eine Angular JS-Direktive, die einige Berechnungen basierend auf der Höhe anderer DOM-Elemente ausführt, um die Höhe eines Containers im DOM zu definieren.

In der Richtlinie geschieht etwas Ähnliches:

return function(scope, element, attrs) {
    $('.main').height( $('.site-header').height() -  $('.site-footer').height() );
}

Das Problem ist, dass, wenn die Richtlinie ausgeführt wird,$('site-header') kann nicht gefunden werden und gibt ein leeres Array anstelle des in jQuery eingeschlossenen DOM-Elements zurück, das ich benötige.

Gibt es einen Rückruf, den ich in meiner Direktive verwenden kann, der erst ausgeführt wird, nachdem das DOM geladen wurde, und über die normalen jQuery-Selector-Style-Abfragen auf andere DOM-Elemente zugreifen kann?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage