AngularJS全局警告框实现方法示例


Posted in Javascript onMay 18, 2017

本文实例讲述了AngularJS全局警告框实现方法。分享给大家供大家参考,具体如下:

<!DOCTYPE html>
<html lang="zh-CN">
 <head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="bootstrap.min.css" rel="external nofollow" >
  <script src="jquery.min.js"></script>
  <script src="angular.js"></script>
  <script src="angular-animate.js"></script>
  <script src="bootstrap.min.js"></script>
  <script type="text/javascript">
    var myapp = angular.module('myapp', ['ngAnimate']);
    myapp.controller('msgController', ['$scope', 'notificationService', function($scope, notificationService) {
      $scope.msg = notificationService;
      $scope.show = function() {
        notificationService.danger('success');
      }
    }]);
    myapp.controller('controller', ['$scope', 'notificationService', function($scope, notificationService) {
      $scope.show = function() {
        notificationService.info('info');
      }
    }]);
    myapp.directive('msgBox', function() {
      return {
        restrict : 'EA',
        scope : {
          content: '@',
          type: '@',
        },
        templateUrl : 'tmpl.html',
        link : function(scope, elem, attrs) {
          scope.close = function() {
            scope.content = '';
          };
        }
      };
    });
    myapp.factory('notificationService', function($timeout, $rootScope) {
      return {
        content : '',
        type : '',
        success : function(content) {
          this.tmpl(content, 'success')
        },
        info : function(content) {
          this.tmpl(content, 'info')
        },
        warning : function(content) {
          this.tmpl(content, 'warning')
        },
        danger : function(content) {
          this.tmpl(content, 'danger')
        },
        tmpl : function(content, type) {
          this.content = content;
          this.type = type;
          var _self = this;
          $timeout(function() {
            _self.clear();
          }, 5000);
        },
        clear : function() {
          this.content = '';
          this.type = '';
        }
      };
    });
  </script>
  <style type="text/css">
    .msg-box {
      z-index: 666;
      position: absolute;
      width: 100%;
      top: 5px;
    }
    .msg.ng-enter {
      transition: 2s linear all;
      opacity: 0.3;
    }
    .msg.ng-enter-active {
      opacity: 1;
    }
    .msg.ng-leave {
      transition: 2s linear all;
      opacity: 1;
    }
    .msg.ng-leave-active {
      opacity: 0;
    }
  </style>
 </head>
 <body ng-app="myapp" ng-controller="msgController">
   <msg-box content="{{msg.content}}" type="{{msg.type}}" class="msg-box">
   </msg-box>
   <h1>content</h1>
   <button type="button" class="btn btn-primary" ng-click="show()">success</button>
   <div ng-controller="controller">
    <button type="button" class="btn btn-primary" ng-click="show()">info</button>
   </div>
 </body>
</html>
<div class="alert alert-{{type || 'info'}} msg" role="alert" ng-if="content">
 <button type="button" class="close" aria-label="Close" ng-click="close()">
  <span aria-hidden="true">×</span>
 </button>
 {{content}}
</div>

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
Prototype源码浅析 Number部分
Jan 16 Javascript
实现web打印的各种方法介绍及实现代码
Jan 09 Javascript
js调用css属性写法
Sep 21 Javascript
JS实现的3D拖拽翻页效果代码
Oct 31 Javascript
jquery限定文本框只能输入数字(整数和小数)
Jan 08 Javascript
jQuery实现磁力图片跟随效果完整示例
Sep 16 Javascript
H5上传本地图片并预览功能
May 08 Javascript
深入讲解xhr(XMLHttpRequest)/jsonp请求之abort
Jul 26 Javascript
微信小程序textarea层级过高的解决方法
Mar 04 Javascript
element-ui表格合并span-method的实现方法
May 21 Javascript
解决layui的input独占一行的问题
Sep 10 Javascript
浅谈Web Storage API的使用
Jun 23 Javascript
第一次记录Bootstrap table学习笔记(1)
May 18 #Javascript
原生js轮播特效
May 18 #Javascript
js实现放大镜特效
May 18 #Javascript
vue v-on监听事件详解
May 17 #Javascript
vue v-model表单控件绑定详解
May 17 #Javascript
Bootstrap 表单验证formValidation 实现表单动态验证功能
May 17 #Javascript
JavaScript中offsetWidth的bug及解决方法
May 17 #Javascript
You might like
通过具体程序来理解PHP里面的抽象类
2010/01/28 PHP
PHP获取http请求的头信息实现步骤
2012/12/16 PHP
php多文件上传功能实现原理及代码
2013/04/18 PHP
Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法
2018/05/28 PHP
jscript之Open an Excel Spreadsheet
2007/06/13 Javascript
用jQuery打造TabPanel效果代码
2010/05/22 Javascript
JavaScript获取页面上某个元素的代码
2011/03/13 Javascript
40款非常棒的jQuery 插件和制作教程(系列二)
2011/11/02 Javascript
input标签内容改变的触发事件介绍
2014/06/18 Javascript
JQuery中的事件及动画用法实例
2015/01/26 Javascript
js+html5实现可在手机上玩的拼图游戏
2015/07/17 Javascript
javascript中去除数组重复元素的实现方法【实例】
2016/04/12 Javascript
非常棒的jQuery图片轮播效果
2016/04/17 Javascript
浅谈js函数三种定义方式 &amp; 四种调用方式 &amp; 调用顺序
2017/02/19 Javascript
Angular2下使用pdf插件的方法详解
2017/04/29 Javascript
JS实现微信里判断页面是否被分享成功的方法
2017/06/06 Javascript
js 获取元素的具体样式信息getcss(实例讲解)
2017/07/05 Javascript
vue router自动判断左右翻页转场动画效果
2017/10/10 Javascript
React 无状态组件(Stateless Component) 与高阶组件
2018/08/14 Javascript
layer.open 按钮的点击事件关闭方法
2018/08/17 Javascript
Vue-Router的使用方法
2018/09/05 Javascript
解读Python中degrees()方法的使用
2015/05/18 Python
Python实现批量转换文件编码的方法
2015/07/28 Python
浅谈numpy中linspace的用法 (等差数列创建函数)
2017/06/07 Python
python安装Scrapy图文教程
2017/08/14 Python
Python编程中NotImplementedError的使用方法
2018/04/21 Python
python实现三次样条插值
2018/12/17 Python
用什么库写 Python 命令行程序(示例代码详解)
2020/02/20 Python
Python无头爬虫下载文件的实现
2020/04/02 Python
python实现简单的学生管理系统
2021/02/22 Python
UGG美国官网:购买UGG雪地靴、拖鞋和鞋子
2017/12/31 全球购物
软件部经理岗位职责范本
2014/02/25 职场文书
项目建议书格式
2014/03/12 职场文书
初中生庆国庆演讲稿范文2014
2014/09/25 职场文书
个人合伙协议书范本
2014/10/14 职场文书
公司管理建议书
2015/09/14 职场文书