ここで答えてください:
これは多面的な質問です。まず第一に、すべての jQuery コード イベントは $scope.$apply を使用して、angularjs コードを期待どおりに実行する必要があります。例:
jQuery(selector).someEvent(function(){
$scope.$apply(function(){
// perform any model changes or method invocations here on angular app.
});
});
jQuery の最新バージョンでは、DOM の変更に基づいて更新されるイベントを作成するために、1. 最も近い親要素のセレクターを取得します (例):
<div class="myDiv">
<div class="myDynamicDiv">
</div>
<!-- Expect that more "myDynamicDiv" will be added here -->
</div>
この場合、親セレクターは「.myDiv」になり、子セレクターは .myDynamicDiv になります。
したがって、jQuery に要素の PARENT にイベントを持たせて、子要素が変更された場合でも機能するようにします。
$('.myDiv').on("click", ".myDynamicDiv", function(e){
$(this).slideToggle(500);
$scope.$apply(function(){
$scope.myAngularVariable = !$scope.myAngularVariable;
});
});
jQuery がこれらの角度変数にアクセスできるようにするために、 $scope.$apply() が使用されていることに注意してください。
お役に立てれば!キリスト教徒