--@angularJS--淺談class與Ng-Class的應用


1、angularjs的表達式是可以寫在class里面動態改變其值的,寫法如下:

□、CSS1.html:

<!doctype html>
<html ng-app="MyCSSModule">

<head>
    <meta charset="utf-8">
    <link rel="stylesheet" href="CSS1.css">
</head>

<body>
    <div ng-controller="CSSCtrl">
        <p class="text-{{color}}">測試CSS樣式</p>                                           //注意這里的class="text-{{color}}"這個class寫法,text-后面的angular表達式變量
        <button class="btn btn-default" ng-click="setGreen()">綠色</button>
    </div>
</body>
<script src="js/angular-1.3.0.js"></script>
<script src="CSS1.js"></script>

</html>

□、CSS1.css:

.text-red {
    background-color: #ff0000;
}
.text-green {
    background-color: #00ff00;
}

□、CSS1.js:

var myCSSModule = angular.module('MyCSSModule', []);
myCSSModule.controller('CSSCtrl', ['$scope',
    function($scope) {
        $scope.color = "red";
        $scope.setGreen = function() {                           //定義一個setGreen()方法,點擊調用這個方法改變color的值,平談無奇就這么簡單
            $scope.color = "green";
        }
    }
]);

 

2、上面的例子改造一下,用ng-class,寫法如下:

□、NgClass.html:

<!doctype html>
<html ng-app="MyCSSModule">

<head>
    <meta charset="utf-8">
    <link rel="stylesheet" href="NgClass.css">
</head>

<body>
    <div ng-controller='HeaderController'>
        <div ng-class='{error: isError, warning: isWarning}'>{{messageText}}</div>                //注意ng-class='{error: isError, warning: isWarning}'的寫法,后面的表達式意為:

                                                                                                                                                當isError為true時,調用error樣式類,當isWarning為true時,調用warning樣式類
        <button ng-click='showError()'>Simulate Error</button>
        <button ng-click='showWarning()'>Simulate Warning</button>
    </div>
</body>
<script src="js/angular-1.3.0.js"></script>
<script src="NgClass.js"></script>

</html>

□、NgClass.css:

.error {
    background-color: red;
}
.warning {
    background-color: yellow;
}

□、NgClass.js:

var myCSSModule = angular.module('MyCSSModule', []);
myCSSModule.controller('HeaderController', ['$scope',
    function($scope) {
        $scope.isError = false;                                              
        $scope.isWarning = false;                                                       //兩個標記變量默認狀態下都為false
        $scope.showError = function() {                                             //控制器里面做的事就是給變量賦值,通過html中的ng-click來調用賦值的方法
            $scope.messageText = 'This is an error!';
            $scope.isError = true;
            $scope.isWarning = false;
        };
        $scope.showWarning = function() {
            $scope.messageText = 'Just a warning. Please carry on.';
            $scope.isWarning = true;
            $scope.isError = false;
        };
    }
])


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM