每当单击 DIV 中的任何元素时,我都想在 Angular 控制器中执行一个函数。
这个怎么做?
基本上我希望在 DIV 元素上放置一个 ng-click 并期望在单击嵌套在 div 内的任何/所有元素时调用 ng-click 事件。
如何达到这个要求?
每当单击 DIV 中的任何元素时,我都想在 Angular 控制器中执行一个函数。
这个怎么做?
基本上我希望在 DIV 元素上放置一个 ng-click 并期望在单击嵌套在 div 内的任何/所有元素时调用 ng-click 事件。
如何达到这个要求?
这里容器和按钮都有点击事件。当你点击按钮时,它的父级的点击事件也会被触发。这在 JavaScript 中称为事件冒泡
var app = angular.module('myApp', []);
app.controller('myCtrl', function ($scope) {
$scope.clicked = function() {
console.log("Clicked Me");
};
$scope.secondclick = function() {
console.log("Button Clicked")
}
});
.container {
width: 100%;
height: 300px;
background: cyan;
cursor: pointer;
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
<div ng-app="myApp" ng-controller="myCtrl">
<div class="container" ng-click="clicked()">
<button ng-click="secondclick()">Click Me</button>
</div>
</div>