뷰에 ng-click첨부 된 항목 목록이 있습니다.
<ul id="team-filters">
<li ng-click="foo($event, team)" ng-repeat="team in teams">
<img src="{{team.logoSmall}}" alt="{{team.name}}" title="{{team.name}}">
</li>
</ul>
foo내 지시문 의 함수에서 클릭 이벤트를 처리하여 클릭 $event된 객체에 대한 참조로 전달 하지만 img태그가 아닌 태그에 대한 참조를 얻습니다 li. 그런 다음 다음과 같은 작업을 수행해야합니다 li.
$scope.foo = function($event, team) {
var el = (function(){
if ($event.target.nodeName === 'IMG') {
return angular.element($event.target).parent(); // get li
} else {
return angular.element($event.target); // is li
}
})();
ng-click내 지시문에서 DOM 작업을 수행하지 않고 바인딩 된 요소에 대한 참조를 얻는 간단한 방법이 있습니까?