加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 如何隐藏div点击页面上的任何位置?

发布时间:2020-12-17 06:58:35 所属栏目:安全 来源:网络整理
导读:好吧,我有主头控制器,我有这个: div class="fade-show-hide" ng-class="{'ng-hide':loggedInClose==true}" ng-show="loggedInOpened" ng-cloak@Html.Partial("~/Views/Shared/_LoggedInPartial.cshtml")/div 在脚本我有这个: $scope.loggedInClose = false
好吧,我有主头控制器,我有这个:

<div class="fade-show-hide" ng-class="{'ng-hide':loggedInClose==true}" ng-show="loggedInOpened" ng-cloak>
@Html.Partial("~/Views/Shared/_LoggedInPartial.cshtml")
</div>

在脚本我有这个:

$scope.loggedInClose = false;

$scope.toggleLoggedIn = function () {
        $scope.loggedInOpened = !$scope.loggedInOpened;
        $scope.languagesOpened = false;
        $scope.loginOpened = false;  
    };

问题是,当我使用此代码时没有发生任何事情……我得到$scope.loggedInClose = true;但div并不隐藏……

angular.element(document).on('click',function () {

    $scope.loggedInClose = true;

});

如果我点击页面上的任何地方,有人可以解释我如何隐藏div吗?

解决方法

我希望你把这个事件监听器放在指令中,而不是在控制器中? :)无论如何,你需要tel Angular来更新范围绑定.对于这个调用$apply方法来启动新的摘要:

angular.element(document).on('click',function () {
    $scope.loggedInClose = true;
    $scope.$apply();
});

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读