AngularJS 1.x: 如何一次突出显示一个活动菜单项(而不是多个)?
AngularJS 1.x: How to highlight active menu item one a time (not multiples)?
这可能看起来微不足道,但如何select一次?
当我点击其他项目时,上一个项目应该 变成 false 并且只有 当前项目 应该 select编辑。
这是 工作计划:https://plnkr.co/edit/cHDwdO3ioZLf0NyfOyEr?p=preview 谢谢。
<section ng-controller="DemoController">
<div ng-repeat="item in list" ng-click="selectItem(item)">
<span ng-class="{'active' : item.selected }">{{item.name}}</span>
</div>
$scope.list = [
{
name: 'Item 1',
selected: true
},
{
name: 'Item 2',
selected: false
},
{
name: 'Item 3',
selected: false
}];
$scope.selectItem = function(item) {
item.selected = !item.selected;
};
替换此函数
$scope.selectItem = function(item) {
angular.forEach($scope.list,function(value){
if(value.name==item.name){
value.selected = true;
} else {
value.selected = false;
}
});
};
这可能看起来微不足道,但如何select一次?
当我点击其他项目时,上一个项目应该 变成 false 并且只有 当前项目 应该 select编辑。 这是 工作计划:https://plnkr.co/edit/cHDwdO3ioZLf0NyfOyEr?p=preview 谢谢。
<section ng-controller="DemoController">
<div ng-repeat="item in list" ng-click="selectItem(item)">
<span ng-class="{'active' : item.selected }">{{item.name}}</span>
</div>
$scope.list = [
{
name: 'Item 1',
selected: true
},
{
name: 'Item 2',
selected: false
},
{
name: 'Item 3',
selected: false
}];
$scope.selectItem = function(item) {
item.selected = !item.selected;
};
替换此函数
$scope.selectItem = function(item) {
angular.forEach($scope.list,function(value){
if(value.name==item.name){
value.selected = true;
} else {
value.selected = false;
}
});
};