9
は次のようにHTMLの構造を考えます親はボディであり、one
の場合のように動作せず、空のセットを返します。アクセス親要素(ボディ)
app.directive 'myDirective', ->
(scope,iElement,iAttrs) ->
console.log iElement.parent()
EDIT:この問題に対する私の推測では、私のアプリの体は、クライアント側でレンダリングされ、モジュールのrunメソッドにbody要素に追加されていることです。 htmlは$('body').html($compile(body.render())($rootScope));
で挿入されています。内容が本体に挿入される前に$ compile関数内でディレクティブが呼び出されたとします。この問題を回避することはできますか?
は期待通りに動作するようです:http://jsfiddle.net/mTNvq/ – Langdon
奇妙なこと今、私は問題の可能性のある手がかりをいくつか持っています。 – olanod
[$ evalAsync](http://docs.angularjs.org/api/ng.$rootScope.Scope#$evalAsync)を使用してみてください(Angular DOM操作の後で、ブラウザのレンダリングの前にAngularダイジェストサイクル後に実行します)。または[ $ timeout](http://docs.angularjs.org/api/ng.$timeout)(ブラウザのレンダリング後に実行されます) –