toaster

AngularJS Toaster是一个 AngularJS 提示框.基于angular v1.2.6 及以上和angular-animate. (推荐使用 /1.2.8/angular-animate.js, 因为高版本会有怪异闪烁.)
引入脚本
<link href="https://cdnjs.cloudflare.com/ajax/libs/angularjs-toaster/0.4.16/toaster.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0/angular.min.js" ></script>
<script src="https://code.angularjs.org/1.2.0/angular-animate.min.js" ></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angularjs-toaster/0.4.16/toaster.min.js"></script>
用法1:
添加指令
<toaster-container></toaster-container>
编写弹窗调用函数
angular.module(‘main‘, [‘toaster‘, ‘ngAnimate‘])
    .controller(‘myController‘, function($scope, toaster) {
        $scope.pop = function(){
            toaster.pop(‘success‘, "title", "text");
        };
    });
  调用
  <div ng-controller="myController">
    <button ng-click="pop()">Show a Toaster</button>
</div>
添加关闭按钮
方式一: 全局的,为所有弹窗添加 <toaster-container toaster-options="{‘close-button‘: true}"></toaster-container>

方式二:给close-btn 属性传递一个对象 <toaster-container toaster-options="{‘close-button‘:{ ‘toast-warning‘: true, ‘toast-error‘: false } }"></toaster-container>
表示warning类型的弹窗显示关闭按钮,error类型的则不显示,不设置默认为false不显示

方式三 :在控制器里面设置: toaster.pop({
                type: ‘error‘,
                title: ‘Title text‘,
                body: ‘Body text‘,
                showCloseButton: true
            });
 这种设置会覆盖页面的属性设置,不会污染其他的弹窗设置

 自定义关闭按钮的html
<toaster-container toaster-options="{‘close-html‘:‘<button>Close</button>‘, ‘showCloseButton‘:true}"></toaster-container>
    或者
toaster.pop({
        type: ‘error‘,
        title: ‘Title text‘,
        body: ‘Body text‘,
        showCloseButton: true,
        closeHtml: ‘<button>Close</button>‘
});

bodyOutputType(body的渲染类型)  可以接受 trustedHtml‘, ‘template‘, ‘templateWithData‘, ‘directive‘四种类型
trustedHtml:使用此类型 toaster会调用$sce.trustAsHtml(toast.body)如果解析成功将会通过ng-bind-html指令被绑定到toaster,失败会抛出一个异常
作为模板处理
例如:    $scope.pop = function(){
        toaster.pop({
            type: ‘error‘,
            title: ‘Title text‘,
            body: ‘cont.html‘,
            showCloseButton: true,
            bodyOutputType:‘template‘,
            closeHtml: ‘<span>wqeqwe</span>‘
        });
    };
作为指令来处理
toaster.pop({
    type: ‘info‘,
    body: ‘bind-unsafe-html‘,
    bodyOutputType: ‘directive‘
});

.directive(‘bindUnsafeHtml‘, [function () {
    return {
        template: "<span style=‘color:orange‘>Orange directive text!</span>"
    };
}])

带数据的指令
toaster.pop({
        type: ‘info‘,
        body: ‘bind-name‘,
        bodyOutputType: ‘directive‘,
        directiveData: { name: ‘Bob‘ }
});

.directive(‘bindName‘, [function () {
      return {
          template: "<span style=‘color:orange‘>Hi {{directiveData.name}}!</span>"
      };
}])

<toaster-container toaster-options="{‘body-output-type‘: ‘template‘}"></toaster-container>

回调函数,当弹窗被移除的时候调用,可以用于链式调用弹窗
toaster.pop({
            title: ‘A toast‘,
            body: ‘with a callback‘,
            onHideCallback: function () {
                toaster.pop({
                    title: ‘A toast‘,
                    body: ‘invoked as a callback‘
                });
            }
});

设置弹窗位置
位置信息可以去css文件里面看需要什么位置,直接把属性值改成相应class就行,如果没有符合的就自己手动添加一个到toaster.css文件然后把名字赋值给属性就行
<toaster-container toaster-options="{‘position-class‘: ‘toast-top-full-width‘}"></toaster-container>

<toaster-container toaster-options="{‘position-class‘: ‘toast-top-center‘, ‘close-button‘:true}"></toaster-container>
时间: 2024-10-11 17:55:16

toaster的相关文章

AngularJS Toaster

AngularJS Toaster是一个 AngularJS 提示框.基于angular v1.2.6 及以上和angular-animate. (推荐使用 /1.2.8/angular-animate.js, 因为高版本会有怪异闪烁.)引入脚本<link href="https://cdnjs.cloudflare.com/ajax/libs/angularjs-toaster/0.4.16/toaster.min.css" rel="stylesheet"

SDNLAB技术分享(二):从Toaster示例初探ODL MD-SAL架构

本文系OpenDayLight SDNLAB研究群(群号:194240432)分享整理而成,分享者魏静波通过对ODL wiki上的toaster例子进行深入浅出的细致讲解形象的描述了ODL MD-SAL的开发架构原理. 文章内容过多,详情点击查看原网页:http://www.sdnlab.com/13972.html

图像滤镜艺术--Toaster滤镜

根据Instagram CEO的说法,Toaster滤镜是Instagram所有滤镜中最复杂的滤镜,这个滤镜给人一种新奇的红色烘烤感,很能让人联想起这个Toaster单词的本意呵呵,今天我将用C#实现这个滤镜,当然我也只是探索,如何逼近它的效果,差异的存在在所难免,大家勿怪哦. 按照之前的说法,还是先使用Photoshop进行模拟,然后根据模拟步骤,进行C#代码编写. 首先,看下效果图: (a)PS效果图 (b)Instagram效果图 (c)C#代码效果图 效果怎么样我说了不算呵呵,下面介绍P

一些安卓框架

从网上收集一些框架,写程序偷懒这些框架很有用,必须记下来,为了以后少写代码,用别人好的框架 ThinkAndroid ThinkAndroid(一个ThinkAndroid教程地址:http://my.oschina.net/u/1046077/blog/127603)虽然有很多使用的功能,如下,很齐全,而且下面这些功能做一个安卓项目都是需要的 MVC模块 ioc模块使用方法: 数据库模块 Http模块使用方法: 异步get方法 同步get方法 使用http下载文件: 缓存模块 方法 打印模块使

十大高明的Google搜索技巧

转载自https://www.mifengtd.cn/articles/ten-tips-for-smarter-google-searches.html Google是一个非常精密成熟的搜索引擎,但大多数的用户都没有能完全地利用到它的能力.一般人就是在Google的搜索框中输入一两个关键 字,然后点击"搜索"按钮,等着Google显示出它第一页的搜索结果.这是一个相当简单模式匹配算法的搜索,不幸的是,通常此时出现的大部分都是并不需要的结果. 所以这篇文章中将向你展示如何更智能.更高效

zynq基础--&gt;yocto

1.yocto中的概念 1.1 metadata set 即为元数据,系统以分层的方式区别元数据. 1.2 swabber 检测主机系统是否正常的机制. 1.3 application development toolkit(ADT) 一套开发工具链 1.4 autoBuilder 一个能够不断自动构建yocto的工具 1.5 BitBake 生成最终镜像文件的一个构建引擎. 1.6 hob 是 BitBake的图形界面 1.7 build appliance 运行hob的虚拟机 1.8 cro

Thinking in Java---再谈线程通信

前面写过一篇关于线程通信的博客,但是只是简单的罗列了几种线程通信的形式及语法:这几天又把<>上对应的内容看了一遍,这一篇博客主要结合几个例子说明下几种线程通信方式的特点. 首先还是要明确线程通信要解决的问题是什么:考虑这么一个情况,我们现在要对一台车进行涂蜡和抛光,并且在进行抛光之前一定要保证已涂蜡,且在涂另一层蜡的时候,又要保证已经抛光:现在我们我们开启两个线程,一个负责涂蜡,另一个负责抛光:要想顺利的完成任务,那么显然这两个线程需要相互等待和协调.这就是线程通信的任务了–如果我们有一个任务

JAVA - Collections用法总结

一生二,二生三,三生万物,基础永远是一个计算机人的立身之本.数据结构这门课程的分析奠定了工程师对各种平台中的容器类,集合类的理解基础,正如好多人所说的,如果你对某个平台的集合类理解的不透彻,很可能,你并不是不会使用那个平台上的代码,而是数据结构没理解透彻. Windows NT平台上,MFC, ATL提供的集合类很少,而且功能很弱,这就导致了事实上的标准成了STL,相比于.Net 和 Java平台 STL在使用上稍显逊色,但是效率上应该是更胜一筹.但是不管哪种实现,都是基于数据结构的理论基础的,

越狱Season 1- Episode 22: Flight

Season 1, Episode 22: Flight -Franklin: You know you got a couple of foxes in your henhouse, right? fox: 狐狸 henhouse: 鸡舍 你的队伍里都是一群狐狸 -Michael: They both want out of here. both: 两者都 他们都想出去 They'll behave until then. behave: 举止端正 出去前都会安分的 -Franklin: Lo