まず第一に、AngularJS の背後にある考え方は、そのような状況を回避することです。
AngularJS に関しては、アプリケーションを再考し、ディレクティブを使用して、現在記述しているコードをスクリプト タグにカプセル化する方がよいでしょう。
ただし、そうは言っても、次のようなスコープにアクセスする方法があります。
var $element = $('#elementId');
var scope = angular.element($element).scope();
詳細については、ドキュメントを参照してください。
ただし、前述のとおり、ほとんどの場合、推奨される方法ではありません。
それが役立つことを願っています!
OPがjsFiddleを投稿した後の更新:
http://jsfiddle.net/jvandemo/hYnBa/1/で、便利なように動作する jsFiddle を作成しました。
あなたの例は属性を持つ単純なものdiv
であるためng-controller
、次のようにスコープにアクセスできます。
<script>
$(document).ready(function(){
var $element = $('div[ng-controller="AdminEventsCtrl"]');
var scope = angular.element($element).scope();
console.dir(scope);
});
</script>
何が起こるかは次のとおりです。
- 要素を選択します (この場合は jQuery を使用)
- 要素を AngularJS 要素としてラップします (要素に追加のメソッドを公開します)
scope()
要素でメソッドを呼び出します
- その後、スコープのプロパティにアクセスできます。
scope.totals
それが役立つことを願っています!