2016-04-01 8 views
0

Guten Tag! Ich habe eine Spanne in meinem Code. Die Klasse enthält ein Bild, das über span angezeigt wird. Sobald der Benutzer das Bild geklickt wird, sollte seine Klasse ändern und wenn eine andere Spanne geklickt wird, sollte es auf die ursprüngliche Klasse zurückÄndern der Spannungsklasse bei Klick angularjs

<span alt="Mode1" ng-class="{'mode': isActive}" ng-click="activeButton()" ></span></span> 

auf meinem Controller

$scope.isActive = false; 
    $scope.activeButton = function() { 
    $scope.isActive = !$scope.isActive; 
    } 

Es ist bereits funktioniert, aber mein Problem Auf der Lade wird nichts angezeigt und es wird nur angezeigt, wenn ich darauf klicke. Ich benutze angularjs btw

+0

Was Sie mit * bedeuten nichts tun wird angezeigt * Es gibt nur eine Spanne ist und wenn es nicht dort ist, wo Sie klicken Sie. Erklären Sie Ihr Problem ausführlich und posten Sie den entsprechenden Code in der Post. –

+0

Wo ist die Klasse, die Sie beim Laden anzeigen müssen? Wenn die 'mode' Klasse auf' ng-click' angezeigt wird? –

+0

@JenishRabadiya die Spannweite zeigt Bilder, wenn es das farbige Bild ist klicken Gegenstück angezeigt werden soll, aber mein Code oben zeigt nichts erst, nachdem ich es angeklickt wird, wird das farbige Pendant – bleykFaust

Antwort

0

Wenn Sie einen Schalter auf ng-click haben, dann ändern Sie einfach die ng-class von diesem.

ng-class="{'mode': isActive, 'classThatIsSupposedToBeShownOnInActive': !isActive}" 

Dann sollte es die Klasse, die Sie auf Last wollen zeigen und zeigen mode Klasse auf ng-click

Hoffe, es hilft.

+0

Danke Es hat funktioniert! aber wie wäre es, wenn ich eine andere Spanne anklicke? Die Klasse sollte in den ursprünglichen Zustand zurückversetzt werden. – bleykFaust

+0

Sie müssen nur den '$ scope.isActive'-Booleschen Wert bei einem anderen Span-Klick auf false umschalten. :) –

+0

kannst du es mir bitte @mJunaidSalaat zeigen? – bleykFaust

Verwandte Themen