如何关注该选项卡时如何暂停或重新运行指令?

时间:2015-10-30 09:56:24

标签: angularjs twitter-bootstrap angularjs-directive angularjs-ng-include

我有一个html页面,我使用 Bootstrap 创建了3个单独的标签,每个标签都有自己的部分,使用ng-include导入。以下是视图的代码 -

<ul class="nav nav-tabs" role="tablist" id="dashboard-tabs">
    <li role="presentation" class="active"><a href="#opportunity" aria-controls="opportunity" role="tab" data-toggle="tab">Opportunity</a>
    </li>
    <li role="presentation"><a href="#effort" aria-controls="effort" role="tab" data-toggle="tab">Effort</a>
    </li>
    <li role="presentation"><a href="#results" aria-controls="results" role="tab" data-toggle="tab">Results</a>
    </li>
</ul>

<!--    Page content    -->
<div class="tab-content">


<!--            Opportunity Tab-->
    <div role="tabpanel" class="tab-pane fade in active" id="opportunity" class="container" >
        <div ng-include="'partials/opportunityView.html'"></div>
    </div>




<!--            Efforts Tab-->
    <div role="tabpanel" class="tab-pane fade" id="effort" >
        <div ng-include="'partials/effortView.html'"></div>
    </div>


<!--            Results Tab-->
    <div role="tabpanel" class="tab-pane fade" id="results">
    </div>
</div>

正如您所看到的,Opportunity视图是默认的焦点视图,它运行得很好。我在 Efforts 选项卡(第二个选项卡)的部分/模板中有一个指令,在该指令链接的函数中我使用jquery来计算指令模板中表行的宽度。但是在页面加载时,它将宽度显示为0.我认为这可能是因为在页面加载时隐藏了Efforts视图。 那么,我该如何解决这个问题呢?我可以在Effort的页面加载上重新编译指令代码,还是可以暂停它的执行,直到焦点选项卡处于焦点位置?

0 个答案:

没有答案