最初の試みの問題は、関数が angular のビュー データ バインディング {{}} 内に配置されたため、何かが変更されるたびに呼び出されることでした。ビュー内の関数は、ng-init、ng-show などのディレクティブ内にのみ配置する必要があります。
ほとんどの場合、関数を 1 回だけ実行する場合は、Angular がブートストラップされた後に実行される ng-init ディレクティブから if を呼び出すことができます。ただし、この関数はページ上の要素を処理するため、すべてがレンダリングされていることを確認する必要があります。jQuery の ready 関数に似た angular.element(document).ready を使用できます。
angular.element(document).ready(function () {
var scope = angular.element(window.document.getElementById("tabsContainer")).scope();
scope.getDivs();
});
2 行目は、div をラップするコントローラーの正しい $scope を取得します (#tabsContainer id を追加しました:
<div id="tabsContainer" ng-controller="TabsDemoCtrl">
<tabset vertical="true" type="navType">
<tab heading="Vertical 1"><div id="ciccio">Content 1</div></tab>
<tab heading="Vertical 2">Vertical content 2</tab>
</tabset>
</div>
ここで更新されたプランカーhttp://plnkr.co/edit/xkzcJfMFnmdfCQtOWEY0