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 相关文章推荐
js中的referrer返回上一页使用介绍
Sep 26 Javascript
document.write的几点使用心得
May 14 Javascript
javascript trim函数在IE下不能用的解决方法
Sep 12 Javascript
jQuery 实现双击编辑表格功能
Jun 19 jQuery
JavaScript生成简单等差数列
Nov 28 Javascript
关于TypeScript模块导入的那些事
Jun 12 Javascript
JS获取子节点、父节点和兄弟节点的方法实例总结
Jul 06 Javascript
node之本地服务器图片上传的方法示例
Mar 26 Javascript
微信小程序实现用table显示数据库反馈的多条数据功能示例
May 07 Javascript
JS中使用react-tooltip插件实现鼠标悬浮显示框
May 15 Javascript
微信小程序顶部导航栏可滑动并选中放大
Dec 05 Javascript
React-vscode使用jsx语法的问题及解决方法
Jun 21 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中iconv函数使用方法
2008/05/24 PHP
分享一个超好用的php header下载函数
2014/01/31 PHP
php正则表达式获取内容所有链接
2015/07/24 PHP
PHP获取昨天、今天及明天日期的方法
2016/02/03 PHP
Zend Framework教程之资源(Resources)用法实例详解
2016/03/14 PHP
PHP书写格式详解(必看)
2016/05/23 PHP
ThinkPHP中图片按比例切割的代码实例
2019/03/08 PHP
php经典趣味算法实例代码
2020/01/21 PHP
Javascript学习笔记7 原型链的原理
2010/01/11 Javascript
自己写了一个展开和收起的多更能型的js效果
2013/03/05 Javascript
jQuery制作拼图小游戏
2015/01/12 Javascript
js完美解决IE6不支持position:fixed的bug
2015/04/24 Javascript
JavaScript使用位运算符判断奇数和偶数的方法
2015/06/01 Javascript
location.hash保存页面状态的技巧
2016/04/28 Javascript
BootStrap使用file-input插件上传图片的方法
2016/09/05 Javascript
JS实现合并json对象的方法
2017/10/10 Javascript
Angular实现较为复杂的表格过滤,删除功能示例
2017/12/23 Javascript
jQuery实现常见的隐藏与展示列表效果示例
2018/06/04 jQuery
jQuery使用动画队列自定义动画操作示例
2018/06/16 jQuery
Vue触发input选取文件点击事件操作
2020/08/07 Javascript
在Python中处理字符串之isdecimal()方法的使用
2015/05/20 Python
Django 视图层(view)的使用
2018/11/09 Python
Python实现图片转字符画的代码实例
2019/02/22 Python
python文字和unicode/ascll相互转换函数及简单加密解密实现代码
2019/08/12 Python
python GUI库图形界面开发之PyQt5滑块条控件QSlider详细使用方法与实例
2020/02/28 Python
Django 项目布局方法(值得推荐)
2020/03/22 Python
python针对Oracle常见查询操作实例分析
2020/04/30 Python
Python接口测试环境搭建过程详解
2020/06/29 Python
总结python 三种常见的内存泄漏场景
2020/11/20 Python
iframe跨域的几种常用方法
2019/11/11 HTML / CSS
WebSphere 应用服务器都支持哪些认证
2013/12/26 面试题
初级软件工程师面试题 Junior Software Engineer Interview
2015/02/15 面试题
升学宴答谢词
2015/01/05 职场文书
建国大业电影观后感
2015/06/01 职场文书
mysql5.7的安装及Navicate长久免费使用的实现过程
2021/11/17 MySQL
Python实现双向链表基本操作
2022/05/25 Python