2017-06-21 20 views
0

私たちはangularjsとhtmlアプリケーションに取り組んでいます。私の要件は、divの完全な読み込みを知ることです。つまり、divのすべての要素の完全なレンダリングを知りたいのです。完全にロードされたdiv要素を知る方法

div Aにはすべての要素が含まれています。実行時にいくつかの要素がロードされ、作成されます。事前に作成されたすべてのHTML要素がロードされます。

サンプルdivがある:このvm.myRunTimeListで

<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> 

は前の要素をレンダリング後の要素を作成しています。 作成した要素と実行時要素のすべての要素を読み込んだ後、divが完成します。

divの要素の読み込みをすべて行うにはどうすればよいですか?

+0

おそらくpostLinkとはどういう意味でしょうか?一般的には、 'finish render'はありません。レンダリングが非同期になる可能性があるため、決して終了しない可能性があります。 –

答えて

0

onload = myfunction()を<div id="myMainDiv" class="tab-pane fade" >に追加するだけです。

<div id="myMainDiv" class="tab-pane fade" onload = myfunction()>を与える。

ロードが完了したらjs関数が呼び出され、その事実に気付くことができます。

+0

ありがとう!しかし、このオプションは私が試したとこれは動作しません。 –

0

最初のダイジェストサイクルの後に関数を実行したいと思っていますか?タイムアウトサービスを使用する

コントローラに$ timeoutを注入してから使用してください。これは、ダイジェストサイクルが完了するまで待機します。 APIデータなどを読み込んでいる場合は、その約束の解決の中に置く必要があります。

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

ゼロ引数は実際にはオプションですが、通常はそのまま使用しますが、好みにします。

関連する問題