後,我有一個使用NG重複一個簡單的模板:操縱模板編譯
template.html
<div id='tmpl'>
<ul>
<li ng-repeat="item in items">{{ item.desc }}</li>
</ul>
</div>
在我的指導,我編譯一個自定義的範圍該模板。然後該模板添加到頁面:
var element = $('#my-div');
var compiledTemplate = $compile(scope.template)(customScope);
element.before(compiledTemplate);
$('#tmpl').show();
這工作很好,但問題是,調用show()之後,我試圖來訪問模板innerHeight(),但在當時NG-在模板中重複執行還沒有執行,我得到的元素呈現之前的價值。
$('#tmpl').innerHeight(); // returns value before ng-repeat is finished
那麼,在ng-repeat完成處理元素之後,是否有一種安全的方式來編譯元素的DOM操作?
考慮在'ng-repeat'完成後進行操作。例如,檢查http://stackoverflow.com/questions/19864007/angularjs-event-for-when-model-binding-or-ng-repeat-is-complete。 –