我有3个按钮“Home”,“About”和“Contact”。在页面加载时,我只希望“主页”按钮处于活动状态。点击“关于”按钮后,只有“关于”按钮处于激活状态,其余2个按钮不起作用。同样,在点击“联系人”按钮之后,只有“联系人”按钮处于活动状态,其余2个按钮不起作用。AngularJS:通过点击另一个按钮来更改CSS
这里的“活动”一词表示按钮具有不同的CSS(与其他2个按钮相比)。我使用AngularJS作为我的前端JS。
我有3个按钮“Home”,“About”和“Contact”。在页面加载时,我只希望“主页”按钮处于活动状态。点击“关于”按钮后,只有“关于”按钮处于激活状态,其余2个按钮不起作用。同样,在点击“联系人”按钮之后,只有“联系人”按钮处于活动状态,其余2个按钮不起作用。AngularJS:通过点击另一个按钮来更改CSS
这里的“活动”一词表示按钮具有不同的CSS(与其他2个按钮相比)。我使用AngularJS作为我的前端JS。
您需要阅读Angular ngClass directive的文档。
With ngClass
您可以将css类绑定到视图中的变量。
假设您在$scope
上设置了page
。
JS(您的角度控制器内)
$scope.page = 'home';
HTML
<li ng-class="{'active': page == 'home'}" ng-click="page = 'home'">Home</li>
CSS
<style type="text/css">
.active {
background: blue;
}
</style>
如果您使用的UI路由器然后有一个指令称为UI,SREF -active在特定状态处于活动状态时添加自定义类。
http://angular-ui.github.io/ui-router/site/#/api/ui.router.state.directive:ui-sref-active
这里的工作jsfiddle这说明它是如何工作的。在student
状态也加active
类的点student.profile
状态。
你使用什么路由? – krutkowski86
@ krutkowski86角ui路由器 –
请检查[这里](http://stackoverflow.com/questions/22219315/angular-ui-router-ui-sref-active-and-nested-states),[这里](http: //stackoverflow.com/questions/25275348/active-link-tab-in-angularui-router)和[这里](http://stackoverflow.com/questions/22054391/angular-ui-router-how-do-i -get-parent-view-to-active-when-navigating-to-ne)以获取更多示例 – Pumych