私はAngularJSに比較的慣れていないので、概念を理解していないと思います。私もTwitter Bootstrapを使用していて、jQueryをロードしています。
ワークフロー:ユーザーがリストからリンクをクリックすると、「マスター」セクションが更新され、ユーザーがクリックしたリンクがアクティブクラスを取得します。
基本的なHTMLマークアップ:
<ul class="list-holder" ng-controller="adminController">
<li><a ng-click="setMaster('client')">Clients</li>
<li><a ng-click="setMaster('employees')">Employees</li>
<li><a ng-click="setMaster('etc')>Etc...</li>
</ul>
jQueryでこれを行う:
jQuery(".list-holder").on('click', 'a', function(event){
event.preventDefault();
jQuery(".list-holder li").removeClass('active');
jQuery(this).parent('li').addClass('active');
});
しかし、Angularを使用してサーバーからマスターリスト(JSON形式)をフェッチし、ページ上のリストを更新するため、AngularとjQueryを統合してこれを行う方法を理解できません。
これをどのように統合しますか?角度コントローラー関数の中に入ると、クリックした要素が見つからないようです。
コントローラ:
function adminController($scope)
{
$scope.setMaster = function(obj)
{
// How do I get clicked element's parent li?
console.log(obj);
}
}
ng-click="setMaster(section, $event)"
。