Sự kiện AngularJS
- Trang trước DOM AngularJS
- Trang tiếp theo Hình thức AngularJS
AngularJS có các chỉ thị sự kiện HTML riêng của mình.
Sự kiện AngularJS
Bạn có thể thêm bộ lắng nghe sự kiện AngularJS vào các phần tử HTML của bạn bằng cách sử dụng một hoặc nhiều chỉ thị sau:
ng-blur
ng-change
ng-click
ng-copy
ng-cut
ng-dblclick
ng-focus
ng-keydown
ng-keypress
ng-keyup
ng-mousedown
ng-mouseenter
ng-mouseleave
ng-mousemove
ng-mouseover
ng-mouseup
ng-paste
Chỉ thị sự kiện cho phép chúng ta chạy các hàm AngularJS trên một số sự kiện người dùng.
Các sự kiện sự kiện AngularJS sẽ không che盖 HTML sự kiện, cả hai sự kiện sẽ được thực thi.
Sự kiện chuột
Khi con trỏ di chuyển lên phần tử, các sự kiện chuột sẽ xảy ra theo thứ tự sau:
- ng-mouseover
- ng-mouseenter
- ng-mousemove
- ng-mouseleave
hoặc, khi nhấn vào phần tử, các sự kiện chuột sẽ được kích hoạt theo thứ tự sau:
- ng-mousedown
- ng-mouseup
- ng-click
Bạn có thể thêm sự kiện chuột vào bất kỳ phần tử HTML nào.
Mô hình
Khi di chuột lên phần tử H1, tăng biến count:
<div ng-app="myApp" ng-controller="myCtrl"> <h1 ng-mousemove="count = count + 1">Di chuột lên trên tôi!</h1> <h2>{{ count }}</h2> </div> <script> var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) { $scope.count = 0; }); </script>
Hướng dẫn ng-click
ng-click
Hướng dẫn định nghĩa mã AngularJS sẽ được thực thi khi phần tử được nhấn.
Mô hình
<div ng-app="myApp" ng-controller="myCtrl"> <button ng-click="count = count + 1">Nhấn tôi!</button> <p>{{ count }}</p> </div> <script> var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) { $scope.count = 0; }); </script>
Bạn cũng có thể gọi một hàm:
Mô hình
<div ng-app="myApp" ng-controller="myCtrl"> <button ng-click="myFunction()">Nhấn tôi!</button> <p>{{ count }}</p> </div> <script> var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) { $scope.count = 0; $scope.myFunction = function() { $scope.count++; } }); </script>
Chuyển đổi, có/không
Nếu bạn muốn hiển thị một phần mã HTML khi nhấn nút và ẩn đi khi nhấn nút lần nữa, giống như menu cuộn, hãy để nút hoạt động như một công tắc chuyển đổi:
Nhấn tôiMô hình
<div ng-app="myApp" ng-controller="myCtrl"> <button ng-click="myFunc()">Nhấn tôi!</button> <div ng-show="showMe"> <h1>Menu:</h1> <div>Pizza</div> <div>Bánh mì Ý</div> <div>Thực phẩm hải sản</div> </div> </div> <script> var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) { $scope.showMe = false; $scope.myFunc = function() { $scope.showMe = !$scope.showMe; } }); </script>
showMe
biến bắt đầu là giá trị布尔. false
.
myFunc
hàm thông qua việc sử dụng !
(phi)toán tử, sẽ showMe
biến thành giá trị ngược lại với giá trị hiện tại của nó.
$event đối tượng
Khi gọi hàm có thể đặt $event
Đối tượng được truyền làm tham số.
$event
Đối tượng chứa đối tượng sự kiện trình duyệt:
Mô hình
<div ng-app="myApp" ng-controller="myCtrl"> <h1 ng-mousemove="myFunc($event)">Dời con trỏ lên trên tôi!</h1> <p>Tọa độ: {{x + ', ' + y}}</p> </div> <script> var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) { $scope.myFunc = function(myE) { $scope.x = myE.clientX; $scope.y = myE.clientY; } }); </script>
- Trang trước DOM AngularJS
- Trang tiếp theo Hình thức AngularJS