zoukankan      html  css  js  c++  java
  • 【AnjularJS系列1】样式相关的指令

      最近,开始学习AngularJS。

      开始记录学习AngularJS的过程,从一些很简单的知识点开始。

      习惯先从实际应用的指令开始,再从应用中去体会AngularJS的优缺点、使用的场景等。

      之前一直希望能在学的过程中,逐步写出一个有设计感的web页面成果,

      但发现,有点困难,反而在样式等花的时间多,学AngularJS的时间少了。

      所以最后决定写一些简单的范例就可以了

      第一篇,样式相关的指令。

    1. ng-Class

                在angularJS中可利用一下三种方法操作class:

                A、scope变量绑定 

                  这里为class,不能用ng-class        

                 实现功能:设置字体大小

    <div class="{{means_1}}">scope变量绑定(不建议使用)</div>
    View Code
    <script type="text/javascript">
        var app = angular.module('MyDemo', []);
        app.controller('MyCtrl',function($scope) {
            $scope.means_1="class_1";
        });
    </script>
    View Code

        B、字符串数组形式:

           boolclass=true 则显示 class_true 的样式

              boolclass=false则显示class_false的样式

              功能实现:点击【样式切换】可切换字体样式

     <div ng-class="{true:'class_true',false:'class_false'}[boolclass]">字符串数组形式</div>
     <input type="button" value="样式切换" ng-click="changeclass();" name="">
    View Code
    <script type="text/javascript">
        var app = angular.module('MyDemo', []);
        app.controller('MyCtrl',function($scope) { 
            $scope.boolclass=false;
            $scope.changeclass=function(){
                    var name=$scope.boolclass;
                    var change=name==false?true:false;
                     $scope.boolclass=change;
                };
        });
    </script>
    View Code

          C、对象key/value处理

        class_error、class_warn:样式

        error、warning:变量

        error为True则增加class_error样式,为false则删除class_error样式,warning同理

                 功能实现:点击【增/删错误样式】可增/删字体的错误样式,点击【增/删警告样式】可增/删字体的警告样式

    <strong>第三种方式:</strong>
        <div ng-class="{class_error:error,class_warn:warning}">对象key/value处理</div>
        <div><input type="button" value="增/删错误样式"  ng-click="AddError();" name="">
        <input type="button" value="增/删警告样式" ng-click="AddWarn();" name=""></div>
    View Code
    <script type="text/javascript">
        var app = angular.module('MyDemo', []);
        app.controller('MyCtrl',function($scope) {
            $scope.error=false;
            $scope.warning=false;
            $scope.AddError=function(){
                var name=$scope.error;
                var change=(name==false?true:false);
                $scope.error=change;
            };
            $scope.AddWarn=function(){
                var name=$scope.warning;
                var change=(name==false?true:false);
                $scope.warning=change;
            };
        });
    
    </script>
    View Code

         2、ng-class-odd、ng-class-even

           使用方式与ng-class相似,分别是在奇数列和偶数列对应的类,与ng-repeat配合使用

            功能实现:点击【样式切换】可切换奇偶行样式

    <strong>ng-class-odd、ng-class-even</strong>
            <table>
            <tr ng-repeat="x in records" ng-class-odd="{true:'class_true',false:'class_false'}[boolclass]"
             ng-class-even="{false:'class_true',true:'class_false'}[boolclass]">
                    <td>{{x.Name}}</td>
                    <td>{{x.Country}}</td>
                </tr>
            </table>
    <input type="button" value="样式切换" ng-click="changeclass();" name="">
    View Code
    <script type="text/javascript">
            var app = angular.module('MyDemo', []);
            app.controller('MyCtrl',function($scope) {
                $scope.records = [
                {
                    "Name" : "Alfreds Futterkiste",
                    "Country" : "Germany"
                },
                {
                    "Name" : "Berglunds snabbk",
                    "Country" : "Sweden"
                },
                {
                    "Name" : "Centro comercial Moctezuma",
                    "Country" : "Mexico"
                },
                {
                    "Name" : "Ernst Handel",
                    "Country" : "Austria"
                }
                ];
                $scope.boolclass=false;
                $scope.changeclass=function(){
                    var name=$scope.boolclass;
                    var change=(name==false?true:false);
                    $scope.boolclass=change;
                };
            });
        </script>
    View Code

        3、ng-style

        ng-style用来绑定元素的css样式,其表达式的返回值为一个js对象,键为css样式名

        功能实现:设置字体样式

    <strong>ng-style</strong>
        <div ng-style="{color:'red'}">ng-style测试</div>
        <div ng-style="style">ng-style测试</div>
    View Code
    var app = angular.module('MyDemo', []);
        app.controller('MyCtrl',function($scope) {
            $scope.style = {color:'blue'}; 
    });
    View Code

        4、ng-show,ng-hide

       ng-show和ng-hide的值为boolean类型的表达式,当值为true时,对应的show或hide生效。

       功能实现:选中checkbox,显示字体

    <strong>ng-show、ng-hide</strong>
        前端技术显示: <input type="checkbox" ng-model="IsCheck">
        <div ng-show="IsCheck">
            <h1>Hello World!~</h1>
            <p>js,angularjs,html,css,nodejs,jquery</p>
        </div>
    View Code
  • 相关阅读:
    怎样写C代码——《狂人C》习题解答1——余响
    怎样写C代码——《狂人C》习题解答1(第一章习题7)
    充分理解表达式——《狂人C》习题解答2(第二章习题5)
    指针——《狂人C》观点
    欧拉项目练习题吧: 题目002
    JS调用XML绑定select[原创]
    SWFUpload在FF下的Bug[原创]
    winform实现嵌套类访问父类的控件[原创]
    在c#中如何动态改变iframe的src值,动态指向一个网页
    GridView里面模板获取唯一值(如ID)
  • 原文地址:https://www.cnblogs.com/alwaysblog/p/6127017.html
Copyright © 2011-2022 走看看