UPDATE: Please ignore. I have found the solution.
I have this GUI design, where a list item has a small button on its right:
<ion-list>
<ion-item class="item-button-right" ng-click="doSomething()">
Do something
<button class="button button-positive" ng-click="showPopup()">
<i class="icon ion-gear-a"></i>
</button>
</ion-item>
</ion-list>
$scope.doSomething = function(){
console.log("doSomething called.");
}
$scope.showPopup = function() {
console.log("showPopup called.");
}
I tested it on both phone and desktop browser with different outcome. It consistently shows both showPopup() and doSomething() get called, even when I deliberately tap on the inner right button only to show popup. I am thinking if there’s a need to return false or invoke a e.preventDefault() within showPopup().
Is there some way to prevent the doSomething() for the outer list item to be run if I only tap on the right inner popup button?