如何在 Angular js 中更改活动链接的背景颜色

How to change background color of the active link in Angular js

本文关键字:链接 活动 背景 颜色 Angular js      更新时间:2023-09-26

My html

<li data-ng-click="sortCategory('demographics')">Demographics</li>
<li data-ng-click="sortCategory('historical')">Historical</li>
<li data-ng-click="sortCategory('experimental')">Experimental</li>

我试过了

<li data-ng-click="sortCategory('socialmedia'); select(item)" data-ng-class="{active: isActive(item)}">Social Media</li>
$scope.isActive = function (item) 
     {
return $scope.isActive(item);
     }

CSS(更少)

li{
&.active {
  background:#0088cc;
}
}

它不起作用...

完全同意 Yoshi 在调用 sortCategory 函数时,您可以将类别存储在范围变量中,并使用它来检查分类是否处于活动状态。一段工作代码可以是:

 $scope.category = 'demographics'; //Your default category
 $scope.sortCategory = function (category) {
   $scope.category = category; //Update the category
   ....
 }
 $scope.isActive = function (category) {
   //Check if category of a given <li> is equal to the current category
   return $scope.category === category;
 }

和看起来像 的模板标记

<li data-ng-click="sortCategory('demographics')" ng-class="{'active' : isActive('demographics')}">Demographics</li>
<li data-ng-click="sortCategory('historical')" ng-class="{'active' : isActive('historical')}">Historical</li> 

你可以在这里找到一个活生生的例子 http://jsfiddle.net/sWKL5/2/