Ich habe ein UI-Bootstrap-Bereich (Header & Körper) mit einer Schaltfläche in der Kopfzeile. Wenn Sie auf den Kopfbereich klicken, sollte der Hauptteil minimiert werden. Ein Klick auf den Button sollte nur ein Popup-Fenster aktivieren. Wenn Sie auf diese Schaltfläche klicken, wird das Fenster leider ebenfalls ausgeblendet. Ich vermute, dass der Bereich hinter der Schaltfläche den Klick irgendwie erfasst. Wie kann ich das verhindern?So verhindern Sie Schaltflächenklick von reduzierenden Bereich
Hier ist der Plunker: http://plnkr.co/edit/teCnC7KtvlQtosZurlqD?p=preview
<div class="panel panel-primary">
<div class="panel-heading" ng-click="vm.onClickHeader()">
<span ng-hide="vm.collapsed" style="padding-top: 8px">
<span ng-click="vm.onClickBtn()"><i class="fa fa-chevron-left fa-2x"></i></span>
</span>
</div>
<div class="panel-body" ng-hide="vm.collapsed" style="padding: 2px; padding-right: 4px">
<div>Click the button above to hide me!</div>
</div>
</div>
var app = angular.module('app');
app.directive('myPanel', MyPanel);
function MyPanel() {
return {
templateUrl: 'my-panel.html',
restrict: 'E',
controller: MyController,
controllerAs: 'vm',
scope: true
};
};
function MyController() {
this.collapsed = false;
this.onClickBtn = function onClickBtn() {
alert('click!')
};
this.onClickHeader = function(evt) {
this.collapsed = !this.collapsed;
}
}
Sie schlugen mich um 4 Sek. +1 –
Danke! Plunker aktualisiert (mit der "nicht-schmutzigen" Lösung). – Skyler