2013-10-07 64 views
0

我使用的路線與HTML模板angularjs:呈現模板後我應該使用什麼事件?

$routeProvider.when('/newroute', 
{ 
templateUrl: 'template/newroute.html', 
controller: 'myController' 
}); 

我需要做一些使用jQuery操作DOM模板HTML渲染後(我知道這是不好的做法,但我無法找到答案我的question

但是,我找不到正確的事件發生後,模板html呈現。 我嘗試了下面,這是行不通的。

$scope.$on('$viewContentLoaded', function() { 
    doSomething(); //does not work 
}); 

當我調試到viewContentLoaded時,模板html DOM仍然不可見。有任何想法嗎?

+0

不完全確定你要完成什麼,需要更多信息! – kmdsax

+0

聽起來像您想要使用自定義指令。 – TheSharpieOne

回答

0

我有同樣的問題。我結束了使用setTimeout運行一些jQuery的

   setTimeout(function() { 
       var l=$('.accordion-section').length; 
       if(l>0){ 
        $('.accordion-section').equalHeights(); 
       } 
      },500); 

我把setTimout呼叫到我的控制器的初始化解決它。 還有一些其他的答案,但$timeout沒有爲我工作。 AngularJS: How to run additional code after AngularJS has rendered a template?