使用AngularJS和javascript显示/隐藏数组中的元素
我想在ng repeat中单击某个项目时显示额外信息,并在Mouseleve上隐藏该项目 在下面的代码片段中,当用户单击另一个项目时,也会打开第一个项目的额外信息 代码片段 我想一次只显示一个项目的额外信息 请帮助我更正我的代码片段 问题是this.showDelete控件一次显示所有元素字符串 更正的代码段 var app=angular.moduleapp,[]; 应用程序控制器'Ctrl',函数$scope{ $scope.items=[{object:'object1'},{object:'object2'},{object:'object3'}]; $scope.onClick=functionitem{ item.showDelete=true; $.Close.fadeIn; } $scope.onLeave=functionitem{ item.showDelete=false; $.Close.fadeOut; } }; {{item.object} 删去使用AngularJS和javascript显示/隐藏数组中的元素,javascript,jquery,angularjs,Javascript,Jquery,Angularjs,我想在ng repeat中单击某个项目时显示额外信息,并在Mouseleve上隐藏该项目 在下面的代码片段中,当用户单击另一个项目时,也会打开第一个项目的额外信息 代码片段 我想一次只显示一个项目的额外信息 请帮助我更正我的代码片段 问题是this.showDelete控件一次显示所有元素字符串 更正的代码段 var app=angular.moduleapp,[]; 应用程序控制器'Ctrl',函数$scope{ $scope.items=[{object:'object1'},{objec
您应该使用$scope.showDelete而不是this.showDelete。如果showDelete是该对象的一个属性,您应该使用:ng show=Clickitem.object.showDelete,并且在函数中:showdele=true$scope.showDelete将显示完整的ng repeat中的所有删除按钮,而不仅仅是我刚才单击的按钮,即我确实遇到的问题,非常优雅的解决方案。作品非常感谢你的帮助,伊瓦尔德
$scope.Click = function (object) {
console.log("Clicked")
this.showDelete = true;
$(".Close").fadeIn(); // <- this did not work actually
}
$(document).mouseup(function (e) {
!$(e.target).closest('.Close').length && $('.Close').fadeOut();
});
<div ng-repeat="item in items">
<div ng-click="Click()">{{item.object}}</div>
<div class="button Close" ng-show="showDelete">delete</div>
</div>