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

发布时间 - 2026-01-11 01:09:30    点击率:

本文实例讲述了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">&times;</span>
 </button>
 {{content}}
</div>

更多关于AngularJS相关内容感兴趣的读者可查看本站专题:《AngularJS指令操作技巧总结》、《AngularJS入门与进阶教程》及《AngularJS MVC架构总结》

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


# AngularJS  # 全局  # 警告框  # AngularJS动态菜单操作指令  # angularjs+bootstrap菜单的使用示例代码  # AngularJS实现树形结构(ztree)菜单示例代码  # 实例详解AngularJS实现无限级联动菜单  # AngularJS自定义指令之复制指令实现方法  # AngularJS使用ng-class动态增减class样式的方法示例  # AngularJS实现动态添加Option的方法  # AngularJS+bootstrap实现动态选择商品功能示例  # AngularJS自定义指令实现面包屑功能完整实例  # AngularJS使用拦截器实现的loading功能完整实例  # AngularJS折叠菜单实现方法示例  # 进阶  # 相关内容  # 感兴趣  # 给大家  # 更多关于  # 所述  # 程序设计  # 操作技巧  # 讲述了  # nofollow  # external  # css  # jquery  # src  # script  # min  # rel  # link  # scale  # bootstrap 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何彻底删除建站之星生成的Banner?  详解Huffman编码算法之Java实现  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  Laravel怎么实现支付功能_Laravel集成支付宝微信支付  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  如何在 Python 中将列表项按字母顺序编号(a.、b.、c. …)  Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】  如何在Windows服务器上快速搭建网站?  详解jQuery中基本的动画方法  javascript事件捕获机制【深入分析IE和DOM中的事件模型】  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】  Laravel如何发送系统通知_Laravel Notifications实现多渠道消息通知  详解Android中Activity的四大启动模式实验简述  魔方云NAT建站如何实现端口转发?  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  如何快速上传自定义模板至建站之星?  如何在阿里云完成域名注册与建站?  Laravel怎么生成URL_Laravel路由命名与URL生成函数详解  Laravel怎么做数据加密_Laravel内置Crypt门面的加密与解密功能  Laravel怎么调用外部API_Laravel Http Client客户端使用  php结合redis实现高并发下的抢购、秒杀功能的实例  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  如何快速搭建二级域名独立网站?  如何在服务器上三步完成建站并提升流量?  Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)  如何在腾讯云免费申请建站?  Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层  Swift中循环语句中的转移语句 break 和 continue  Laravel如何创建自定义Facades?(详细步骤)  nodejs redis 发布订阅机制封装实现方法及实例代码  Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】  如何挑选高效建站主机与优质域名?  如何在 Go 中优雅地映射具有动态字段的 JSON 对象到结构体  青岛网站建设如何选择本地服务器?  HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】  谷歌浏览器如何更改浏览器主题 Google Chrome主题设置教程  如何在香港免费服务器上快速搭建网站?  桂林网站制作公司有哪些,桂林马拉松怎么报名?  Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】  如何用景安虚拟主机手机版绑定域名建站?  如何快速搭建高效服务器建站系统?  如何在云服务器上快速搭建个人网站?  Laravel如何使用Contracts(契约)进行编程_Laravel契约接口与依赖反转  Python面向对象测试方法_mock解析【教程】