AngularJS HTML DOM
    AngularJS为HTML DOM 元素的属性提供了绑定应用数据的指令。

ng-disabled指令
    ng-disabled指令直接绑定应用数据到HTML的disabled属性。
      实例:
      <div ng-app="" ng-init="mySwitch=true">
        <p>
          <button ng-disableled="mySwitch">点我!</button>
        </p>
        <p>
          <input type="checkbox" ng-model ="mySwitch">按钮
        </p>
        <p>
          {{ mySwitch }}
        <p>
    </div>
    实例讲解:
        ng-disabled 指令绑定应用程序数据“mySwitch”到HTML 的disabled 属性。
        ng-model 指令绑定 “mySwitch”到HTML input checkbox 元素的内容(value).
        如果mySwitch 为true ,按钮将不可用。
        <p>
          <button disabled>点我!</button>
        </p>
          如果 mySwitch 为false, 按钮则可用:
        <p>
          <button>点我!</button>
        </p>

ng-show 指令
    ng-show 指令隐藏或显示一个HTML 元素。
    实例
      <div ng-app="">
        <p ng-show="true">我是可见的</p>
        <p ng-show="false">我是不可见的</p>
      </div>
    ng-show指令是根据value的值来显示(隐藏)HTML元素。
    你可以使用表达式来计算布尔值(true或false):
    实例:
      <div ng-app="">
        <p ng-show="hour > 12">我是可见的</p>
      </div>

ng-hide指令
    ng-hide指令用于隐藏或者显示HTML 元素。
    实例
      <div ng-app="">
        <p ng-hide="true">我是不可见的</p>
        <p ng-hide="false">我是可见的</p>
      </div>

AngularJS 事件
    AngularJS 有自己的HTML 事件指令

ng-click 指令
    ng-click 指令定义了AngularJS 点击事件
    实例:
      <div ng-app="" ng-controller="myCtrl">
        <button ng-click="count = count +1">点我!</button>
        <p>{{ count }}</p>
      </div>

隐藏HTML元素
    ng-hide 指令用于设计应用部分是否可见
    ng-hide="true"设置HTML元素不可见,
    ng-hide="false"设置HTML 元素不可见。
    实例:
      <div ng-app="myApp" ng-controller="personCtrl">
        <button ng-click="toggle()">>隐藏/ 显示</button>
        <p ng-hide="myVar">
          名:<input type="text" ng-model="firstName">
          姓名:<input type="text" ng-model="lastName">
          Full Name:{{firstName + ""+lastName}}
        </p>
      </div>
      <script>
        var app = angular.module('myApp',[]);
        app.controller('personCtrl',function($scope){
        $scope.firstName = "John",
        $scope.lastName="Doe"
        $.scope.myVar = false;
        $scope.toggle = function(){
            $scope.myVar = !$scope.myVar;
          }
        })
    </script>
    应用解析:
      第一部分 personController与控制器章节类似。
        应用有一个默认属性:$scope.myVar = false;
        ng-hide指令设置<p>元素及两个输入域是否可见,根据myVar的值(true 或false)来设置是否可见
        toggle()函数用于切换myVar 变量的值(true 和false)
        ng-hide="true"让元素不可见。

显示HTML元素
    ng-show 指令可用于设置应用中心的一部分是否可见。
    ng-show="false" 可以设置HTML 元素 不可见。
    ng-show=“true”可以设置HTML元素可见。
      实例:
        <div ng-app="myApp" ng-controller="personCtrl">
          <button ng-click = "toggle()">隐藏/显示</button>
          <p ng-show ="myVar">
          名:<input type="text" ng-model="firstName">
          姓:<input type="text" ng-model="lastName">
          姓名:{{firstName +""+ lastName}}
          </p>
        </div>
        <script>
          var app = angular.module('myApp',[]);
            app.controller('personCtrl',function($scope){
                $scope.firstName = "John",
                $scope.lastName = "Doe"
                $scope.myVar = true;
                $scope.toggle = function(){
                    $scope.myVar = !$scope.myVar;
                }
          })
        </script>

AngularJS 模块
    模块定义了一个应用程序。
    模块是应用程序中不同部分的容器。
    模块是应用控制器的容器。
    控制器通常属于一个模块。

创建模块
    <div ng-app="myApp">...</div>
    <script>
      var app = angular.module("myApp",[]);
    </script>
    “myApp”参数对应执行应用的HTML元素。
    现在你可以在AngularJS 应用中添加控制器,指令,过滤器等。

添加控制器
    你可以使用ng-controller 指令来添加应用的控制器。
    实例:
      <div ng-app="myApp" ng-controller="myCtrl">
        {{firstName + "" +lastName}}
      </div>
      <script>
        var app= angular.module("myApp",[]);
        app.controller("myCtrl",function($scope){
            $scope.firstName = "John";
            $scope.lastName = "Doe";
        })
      </script>

添加指令
      AngularJS 提供了很多内置的命令,你可以使用它们来为你的应用添加功能。
        实例:
          <div ng-app="myApp" runoob-directive></div>
          <script>
            var app = angular.module("myApp",[]);
            app.directive("runoobDirective",function(){
            return{
                template:"我在指令构造器中创建!"
              };
            })
        </script>

模块和控制器包含在JS 文件中
    通常AngularJS 应用程序将模块和控制器包含在JavaScript文档中
    <!DOCTYPE html>
    <html>
      <script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
    <body>

    <div ng-app="myApp" ng-controller="myCtrl">
        {{ firstName + " " + lastName }}
    </div>
    <script src="myApp.js"></script>
      <script src="myCtrl.js"></script>
    </body>
    </html>
      myApp.js
        var app = angular.module("myApp",[]);
        在模块定义中[] 参数用于定义模块的依赖关系。
        中括号[] 表示该模块没有依赖,如果有依赖的话会在中括号写上依赖的模块名。
      myCtrl.js
    app.controller("myCtrl",function($scope){
        $scope.firstName = "John";
        $scope.lastName ="Doe";
    })

函数会影响到全局命名空间
    JavaScript 中应避免使用全局函数。因为他们很容易被其他脚本文件覆盖。
    AngularJS 模块让所有的函数的作用域在该模块下,避免了该问题。

什么时候载入库?
    在我们的实例中,所有的AngularJS 库都在HTML 文档的头部载入。
    对于HTML应用程序,通常建议把所有的脚本都放置在<body>元素的最底部。
    会提高网页的加载速度,因为HTML加载不受制于脚本加载。
    在我们的多个AngularJS 实例中您将看到AngularJS库是在文档的<head>区域被加载。
    在我们的实例中,AngularJS在<head>元素中被加载,因为对angular.module的调用只能在库加载完后才能进行。
    另一个解决方案在<body>元素中加载AngularJS 库,但是必须放置在您的AngularJS脚本前面:
    实例
      <!DOCTYPE html>
        <html>
        <head>
          <meta charset="utf-8">
          <script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
        </head>
        <body>
          <div ng-app="myApp" ng-controller="myCtrl">
            {{ firstName + " " + lastName }}
          </div>
        <script>
          var app = angular.module("myApp", []);
          app.controller("myCtrl", function($scope) {
            $scope.firstName = "John";
            $scope.lastName = "Doe";
          });
        </script>
        </body>
        </html>

Angularjs基础(六)的更多相关文章

  1. AngularJS基础入门初探

    一.AngularJS简介 1.1 什么是AngularJS (1)一款非常优秀的前端JS框架,可以方便实现MVC/MVVM模式 (2)由Misko Hevery 等人创建,2009年被Google所 ...

  2. Bootstrap<基础六> 表单

    Bootstrap 通过一些简单的 HTML 标签和扩展的类即可创建出不同样式的表单. 表单布局 Bootstrap 提供了下列类型的表单布局: 垂直表单(默认) 内联表单 水平表单 垂直或基本表单 ...

  3. C#_02.15_基础六_.NET类

    C#_02.15_基础六_.NET类 一.类继承是一个类在另一个类的基础上进行的扩展. 继承的子类拥有父类的全部成员.索引子类拥有本身的全部成员以及父类的全部成员. 可以对基类成员进行隐藏,如果必须的 ...

  4. {Django基础六之ORM中的锁和事务}一 锁 二 事务

    Django基础六之ORM中的锁和事务 本节目录 一 锁 二 事务 一 锁 行级锁 select_for_update(nowait=False, skip_locked=False) #注意必须用在 ...

  5. day 71 Django基础六之ORM中的锁和事务

    Django基础六之ORM中的锁和事务   本节目录 一 锁 二 事务 三 xxx 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 锁 行级锁 select_for_update(no ...

  6. day 58 Django基础六之ORM中的锁和事务

      Django基础六之ORM中的锁和事务   本节目录 一 锁 二 事务 三 xxx 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 锁 行级锁 select_for_update( ...

  7. Django基础六之cookie和session

    Django基础六之cookie和session 目录 Django基础六之cookie和session 1. cookie和session介绍 1.1 cookie 简介 1.2 cookie的缺陷 ...

  8. AngularJS基础知识1

    一.angularJS简介 1.什么是 AngularJS? AngularJS 是一个 JavaScript 框架.它是一个以 JavaScript 编写的库.AngularJS是协助搭建单页面工程 ...

  9. AngularJS基础概念

    作用域.控制器.指令 作用域 应用的作用域是和应用的数据模型相关联的,同时作用域也是表达式执行的上下文.$scope对象是定义应用业务逻辑.控制器方法和视图属性的地方. 作用域是应用状态的基础.基于动 ...

随机推荐

  1. java 获取网络地址图片

    收藏一个获取网络图片的方法. //获取网络图片 public void ImageRequest(String ImageName,String GifUrl) throws Exception { ...

  2. C# Winform小程序:局域网设置NTP服务器、实现时间同步

    设置NTP服务器: NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的时间的协议. 局域网不能连接Internet,可以设置一台计算机为NTP服务器. ...

  3. mvc路由引起异步调用web服务的问题

    从一篇blog得知使用脚本可以异步调用Web服务,觉得很新鲜,因为自己很少用到Web服务,所以决定写一写看看什么效果. 首先在UI项目(我使用的是MVC4.0)里创建一个Web服务. 添加Web服务后 ...

  4. git丢弃修改

    丢弃本地所有更改: git fetch origin git reset --hard origin/[对应的分支]   更改上次提交的注释: git commit --amend  会进到(vim编 ...

  5. scss-注释

    在scss中有两种注释方式 原生css的注释多行注释: /* *  注释的内容 */ 单行注释:// 注释内容一致延续到行末. 在尽可能的情况下,多行注释会被保留在输出的CSS中,而单行注释会被删除.

  6. 闭包中的this

    var name="pushline";//全局变量 var obj=new Object(); obj.name="jms"; obj.getName=fun ...

  7. Eclipse SWT

    Reference: http://www.eclipse.org/swt/ http://www.functionx.com/win32/Lesson01.htm http://www.win32d ...

  8. 卸载Gac里被windows installer所reference的assembly的方法

    HKEY_LOCAL_MACHINE\Software\Classes\Installer\Assemlies\Global下找到要删除的assembly的那一项, 删除. 然后再gacutil /u ...

  9. 转:ArcGIS提取面状道路中心线(转载)

    1.首先把所有的面要素merge成一个要素 2.把merge后的数据转成线数据 3.此时转换后的线数据一定是闭合的,为了防止提取中心线失败(只提取出外围轮廓)我们在随意一个道路末端使用打断工具打一个开 ...

  10. 猿创|有赞的zan framework安装与使用

    1.准备工作 1.1 一台腾讯云服务器2核CPU+2G内存的Linux CentOS 7.2(谢谢小杨同学@erchoc) 1.2 预装lnmp一键安装包环境,官方地址:lnmp一键安装包 (如不会使 ...