AngularJSAngularJS神速入门指南11:事件

隐藏HTML元素

  ng-hide一声令下可以用来呈现(或潜伏)application中的部分情节。

  ng-hide=”true”将使HTML元素invisible(即隐藏)。

  ng-hide=”false”将使HTML元素visible(即可见)。

<div ng-app="myApp" ng-controller="personCtrl">

<button ng-click="toggle()">Toggle</button>

<p ng-hide="myVar">
First Name: <input type="text" ng-model="firstName"><br>
Last Name: <input type="text" ng-model="lastName"><br>
<br>
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>

运行

代码解释:

  personCtrl概念了一个控制器,这和控制器一章中的内容一致。

  application有一个默认属性(变量):$scope.myVar = false;

  元素<p>拥有三个input标签,ng-hide一声令下通过myVal变量的值(true或false)设置visibility。

  函数toggle()用来更换myVar变量的值,将其修改为true或false。

  当ng-hide=”true”时HTML元素会被隐形(即invisible)。


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

ng-click指令

  ng-click一声令下定义了AngularJS的click事件。

<div ng-app="" ng-controller="myCtrl">

<button ng-click="count = count + 1">Click me!</button>

<p>{{ count }}</p>

</div>

运行


显示HTML元素

  ng-show指令也得以用来显示(或潜伏)application中的部分情节(与ng-hide指令正好相反)。

AngularJS,  ng-show=”false”将使HTML元素invisible(即隐藏)。

  ng-show=”true”将使HTML元素visible(即可见)。

  上一小节中的示例也足以用ng-show来替代实现平等的效果:

<div ng-app="myApp" ng-controller="personCtrl">

<button ng-click="toggle()">Toggle</button>

<p ng-show="myVar">
First Name: <input type="text" ng-model="firstName"><br>
Last Name: <input type="text" ng-model="lastName"><br>
<br>
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 = true;
    $scope.toggle = function() {
        $scope.myVar = !$scope.myVar;
    }
});
</script>

运行

上一章 –
AngularJS神速入门指南10:DOM节点

下一章 –
AngularJS连忙入门指南12:模块

 


相关文章