2017-06-21 68 views
0

我們正在研究angularjs和html應用程序。我的要求是知道div的完整加載,即想知道div的所有元素的完整呈現。如何知道div元素完全加載angularjs

可以說div A包含所有元素。在所有預先創建的HTML元素被加載後,運行時加載和創建一些元素。

樣品DIV是:

<div id="myMainDiv" class="tab-pane fade" >  
    <div class="col-sm-4"><input id="myEle1" type="text" class="form-control" 
    maxlength="250" tab-group="g1" tab-index="0" tab-man ng-model="vm.min"></div> 
    <div class="col-sm-4"><span style="font-size: 25px;"><a href="" id="myEle2" tooltip-placement='right' 
    uib-tooltip-template="'tooltipContent.html'"><i class="fa fa-info-circle" style="color:#061530;"></i></a></span></div> 
    <div class="col-sm-12" ng-repeat="(key, value) in vm.myRunTimeList"> 
     <div class="col-sm-5">{{::key}}</div> 
     <div class="col-sm-7" style="display:flex;"> 
      <input type="text" class="form-control" 
        style="width:60%;margin-right: 5px;" readonly 
        ng-model="value.retCode"/> 
      <span style="font-size: 25px;"> 
       <a href="" id="desc{{$index}}" tooltip-placement='top-right' 
       uib-tooltip="{{value.retDescription}}"><i 
       class="fa fa-info-circle" style="color:#061530;"></i></a> 
      </span> 
     </div> 
    </div> 

在這種vm.myRunTimeList被預呈現元件後產生元件。 加載所有元素(無論是預先創建的元素還是運行時元素)後,我的div完整。

我怎樣才能實現在一個div中的所有元素的加載?

+0

不確定你的意思,可能是postlink?一般來說,沒有'完成渲染',因爲渲染可能是異步的,所以它可能永遠不會完成。 –

回答

0

只需將onload = myfunction()添加到<div id="myMainDiv" class="tab-pane fade" >即可。

給出<div id="myMainDiv" class="tab-pane fade" onload = myfunction()>

然後你的js函數將在加載完成時被調用,並且你可以注意到這個事實。

+0

謝謝!但這個選項我已經嘗試過,這不起作用。 –

0

我假設你想在初始摘要循環之後運行一個函數?使用超時服務

注入$超時到您的控制器,然後使用。這將等到摘要週期完成後。如果您正在加載API數據或您可能需要將其放入該承諾的解決方案中。

$timeout(function() { 
    //whatever you want to happen after render 
}, 0); 

零參數實際上是可選的,我通常保留它,但您的偏好。

相關問題