Not sure how to hide a div when clicking OUTSIDE of the div

前端 未结 4 531
挽巷
挽巷 2020-12-23 17:20

This is a follow-up question to this question: AngularJS input with focus kills ng-repeat filter of list

Basically my code is using AngularJS to pop-out a div (a dra

4条回答
  •  轻奢々
    轻奢々 (楼主)
    2020-12-23 18:04

    I suggest to add $event.stopPropagation(); on the view right after on the ng-click. You don't need to use jQuery.

    
    

    Then, you can use this simplified js.

    $scope.toggleSearch = function () {
        $window.onclick = null;
        $scope.menuOpen = !$scope.menuOpen;
    
        if ($scope.model.menuOpen) {
            $window.onclick = function (event) {
                $scope.menuOpen = false;
                $scope.$apply();
            };
        }
    };
    

提交回复
热议问题