微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Angular ng-class样式切换

1、HTML

<ion-view>
    <ion-content>
        <div class="button-bar">
            <div ng-class="{true: 'bgstyle-check',false: 'bgstyle'}[isFirst]" ng-click="isFirst = !isFirst">First</div>
            <div ng-class="{true: 'bgstyle-check',false: 'bgstyle'}[isSecond]" ng-click="isSecond = !isSecond">Second</div>
            <div ng-class="{true: 'bgstyle-check',false: 'bgstyle'}[isThird]" ng-click="isThird = !isThird">Third</div>
        </div>
        <br><br>
        <div class="button-bar">
            <div ng-class="{true: 'bgstyle-check',false: 'bgstyle'}[hasAll]" ng-click="toggleAll()">All</div>
            <div ng-class="{true: 'bgstyle-check',false: 'bgstyle'}[hasFirst]" ng-click="toggleFirst()">First</div>
            <div ng-class="{true: 'bgstyle-check',false: 'bgstyle'}[hasSecond]" ng-click="toggleSecond()">Second</div>
            <div ng-class="{true: 'bgstyle-check',false: 'bgstyle'}[hasThird]" ng-click="toggleThird()">Third</div>
        </div>
    </ion-content>
</ion-view>
<style>
    .bgstyle {background-color: #8f8f8f;width: 100%;height: 20px;margin: 2px 0 2px 0;text-align: center;}
    .bgstyle-check {background-color: #ff3b30;width: 100%;height: 20px;margin: 2px 0 2px 0;text-align: center;}
</style>

2、controller

appControllers.controller('TestlCtrl',function ($scope,$state) {
    $scope.isFirst = false;
    $scope.isSecond = false;
    $scope.isThird = false;


    $scope.hasAll = false;
    $scope.hasFirst = false;
    $scope.hasSecond = false;
    $scope.hasThird = false;

    $scope.toggleAll = function () {
        $scope.hasAll = !$scope.hasAll;
        console.log($scope.hasAll);
        var dynamicValue = $scope.hasAll;
        $scope.hasFirst = dynamicValue;
        $scope.hasSecond = dynamicValue;
        $scope.hasThird = dynamicValue;
    }

    $scope.toggleFirst = function () {
        $scope.hasFirst = !$scope.hasFirst;
        checkAll();
    }

    $scope.toggleSecond = function () {
        $scope.hasSecond = !$scope.hasSecond;
        checkAll();
    }

    $scope.toggleThird = function () {
        $scope.hasThird = !$scope.hasThird;
        checkAll();
    }

    function checkAll() {
        if ($scope.hasFirst == true && $scope.hasSecond == true && $scope.hasThird == true) {
            console.log("123ok");
            $scope.hasAll = true;
        } else {
            console.log("123no");
            $scope.hasAll = false;
        }

    }
})
3、效果

原文地址:https://www.jb51.cc/angularjs/147736.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐