Вложенный ng-click
Такой код
<div ng-click="f1()">бал-бла-бла<span ng-click="f2()">ткни в меня</span></div>При нажатии на span вызывается и f2() И f1(). Как можно при нажатии на span отменить вызов функции f1()? |
Вариант 1.
$event.stopPropagation() - отмена "продвижения" события дальше по цепочке. В выражении (или вставить в обработчик события) <span ng-click="f2();$event.stopPropagation()"> Вариант 2. Контроль в обработчике элемента назначения клика
<div ng-click="f1($event)">бал-бла-бла ...
$scope.f1 = function (event){
if(event.target === event.currentTarget){
console.log('Do something...')
}
};
http://plnkr.co/edit/iZZtUFlnR85iKfE6RzFE?p=preview |
Спасибо. Про $event нашел, но не смог понять, куда его вставить.
|
| Часовой пояс GMT +3, время: 20:32. |