如何使用AngularJS单击身体内的任何位置弹出窗口?

时间:2016-05-15 06:20:29

标签: javascript jquery html angularjs

如果互联网可用,我必须显示弹出消息,以便在点击页面正文中的任何位置时显示网络连接。使用JavaScript,我们可以使用addeventlister,如下所示。

但我如何实现这一目标呢?

document.body.addEventListener("click", function(){
   alert("hello");
});

2 个答案:

答案 0 :(得分:1)

在AngularJS中执行此操作的一种方法是使用ng-click指令。基本上,您将警报和网络状态检查代码封装在页面控制器的范围方法中。

app.controller('mainCtrl', function($scope) {
  $scope.message = 'Click the button';
  $scope.showMessage = function() {
    // Simple example that doesn't check network status or
    // display anything of real value other than verifying
    // that a click anywhere on the page will invoke this method
    alert('hello');
  }
});

完成此操作后,您将ng-click="showMessage"指令放在您希望附加事件侦听器的元素上。在这个例子中,我使用整个身体。

  <body ng-controller="mainCtrl" ng-click="showMessage()">
    <h1>Hello Plunker!</h1>
    <p>Click anywhere</p>
  </body>

Here is a basic plunk, to test it out.

答案 1 :(得分:0)

这是你在AngularJS中的表现方式:

的index.html

<!DOCTYPE html>
<html ng-app ="myApp">
    <head>
        <title>Angular</title>
        <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script>
        <script type="text/javascript" src="script.js"></script>
    </head>

    <body ng-controller="myCtrl">
    </body>
</html>

的script.js

angular.module("myApp",[])
.controller('myCtrl', ['$scope', function($scope){
    document.addEventListener("click",function(){
        alert("Hello");
    });
}])

这里是plnkr。点击页面上的任意位置,您会看到alert弹出。