9
鑑於類似於HTML結構如下:訪問父元素(體)
<body>
<div id="one" my-directive></div>
<div>
<div id="two" my-directive></div>
</div>
</body>
當我試圖訪問它的工作原理的two
父元素和日誌返回父格,但是當父母是身體,如在one
的情況下,它不起作用並返回一個空集。
app.directive 'myDirective', ->
(scope,iElement,iAttrs) ->
console.log iElement.parent()
編輯:我對這個問題的猜測是,我的應用程序的身體呈現在客戶端和附加到body元素模塊的run方法。插入的html爲$('body').html($compile(body.render())($rootScope));
,我猜想在內容插入到主體之前,在$ compile函數中調用該指令。我可以解決這個問題嗎?
似乎按預期方式工作:http://jsfiddle.net/mTNvq/ – Langdon 2013-04-30 17:02:10
這是怪異,現在我有一些可能是問題的線索。 – olanod 2013-04-30 17:31:09
嘗試使用[$ evalAsync](http://docs.angularjs.org/api/ng.$rootScope.Scope#$evalAsync)(在Angular digest循環之後執行,因此在Angular DOM操作之後,但在瀏覽器呈現之前執行)或[ $ timeout](http://docs.angularjs.org/api/ng.$timeout)(在瀏覽器渲染後執行)。 – 2013-04-30 18:32:37