好吧,我有主头控制器,我有这个:
<div class="fade-show-hide" ng-class="{'ng-hide':loggedInClose==true}" ng-show="loggedInOpened" ng-cloak>
@Html.Partial("~/Views/Shared/_LoggedInPartial.cshtml")
</div>
Run Code Online (Sandbox Code Playgroud)
在脚本我有这个:
$ scope.loggedInClose = false;
$scope.toggleLoggedIn = function () {
$scope.loggedInOpened = !$scope.loggedInOpened;
$scope.languagesOpened = false;
$scope.loginOpened = false;
};
Run Code Online (Sandbox Code Playgroud)
问题是当我使用这个代码没有发生任何事情...我得到$scope.loggedInClose = true;但div不隐藏...
angular.element(document).on('click', function () {
$scope.loggedInClose = true;
});
Run Code Online (Sandbox Code Playgroud)
如果我点击页面上的任何地方,有人可以解释我如何隐藏div吗?
单独使用ng-hide而不是内部使用ng-class。因此将 HTML 更改为:
<div class="fade-show-hide" ng-hide="loggedInClose" ng-show="loggedInOpened" ng-cloak>
Run Code Online (Sandbox Code Playgroud)
我认为您的更改没有得到应用:
$scope.$apply();之后使用$scope.loggedInClose = true;
请参阅 plunkr“ http://plnkr.co/edit/0u7u4InJsJpI4g4E8vvg?p=preview ”
| 归档时间: |
|
| 查看次数: |
2893 次 |
| 最近记录: |