angular可自定义的对话框,弹窗指令
指令不明的,推荐 AngularJS指令参数详解
以下为示例代码
<!DOCTYPE html>
<html lang="en" ng-app="app">
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="../dist/lib/angular/angular.min.js"></script>
<link rel="stylesheet" type="text/css" href="../dist/css/all.min.css" />
<script type="text/javascript" src="../dist/app.js"></script>
<title></title>
<script>
/**************************************************************************
*可自定义弹窗指令
* <dialog load-data="对象"></dialog>
*传入一个参数对象。以下为参数解释
* $scope.data={//共三个参数
isShow: true,//必须 控制显示和隐藏
template: {//必须 内容模板
url: webroot+'/views/dialog/warn-dialog.html',//模板地址
events: function (events) {//对模板进行事件绑定,所有事件和值必须绑定在传入的对象上
//events:用于绑定事件和值
}
},
buttons: {//必须 buttons:{}空对象表示没有按钮,按钮可0-n个
key: 'name',//非必须,用于控制按钮显示哪个值
list: [//非必须,用于自定义按钮,list存在,key必须存在,不存在表示使用默认按钮
{//元素内容自定义,用key控制显示
name: buttonName,
value: 'true'
},
{
name: '取消',
value: 'false'
}
],
callback: function (item, index) {//使用按钮必须存在,按钮点击的回调事件,item:当前选中的元素,index:元素下标
$scope.data.isShow = false;//修改显示隐藏
if (item.value) {
//window.location.href='login.html';
}
}
}
}
* <dialogload-data="data"></dialog>
*
**************************************************************************/
app.controller('dialog', ['$scope','webroot', function ($scope,webroot) {
$scope.content="这是一个传参测试";
$scope.buttonName='确认'; $scope.data = {
isShow: true,
template: {
url: webroot + '/views/dialog/warn-dialog.html',
events: function (events) {
//因为在当前$scope中定义,所以能够直接访问当前$scope空间
events.content = $scope.content;
events.back=function(){//因为传递的是值,需要自己进行触发.
$scope.backData ='这是一个回传:'+events.content;
}; }
},
buttons: {
key: 'name',
list: [
{
name: $scope.buttonName,
value: 'true'
},
{
name: '取消',
value: 'false'
}
],
callback: function (item, index) {
$scope.data.isShow = false;
console.log('这是一个回调事件'+index);
console.log(item);
}
}
};
}]);
</script>
</head>
<body ng-controller="dialog">
<dialog load-data="data"></dialog>
<button ng-click="data.isShow=!data.isShow">点击按钮测试</button>
{{backData}}
<script type="text/javascript" src="../dist/directive/dialogBox.js"></script> </body>
</html>
实例github可以下载
样式文件,根据自己需求自行修改。
angular可自定义的对话框,弹窗指令的更多相关文章
- Taro自定义Modal对话框组件|taro仿微信、android弹窗
基于Taro多端实践TaroPop:自定义模态框|dialog对话框|msg消息框|Toast提示 taro自定义弹出框支持编译到多端H5/小程序/ReactNative,还可以自定义弹窗类型/弹窗样 ...
- Android中制作自定义dialog对话框的实例
http://www.jb51.net/article/83319.htm 这篇文章主要介绍了Android中制作自定义dialog对话框的实例分享,安卓自带的Dialog显然不够用,因而我们要继 ...
- 修改VCL源码实现自定义输入对话框
来自:https://yq.aliyun.com/wenji/88428 通过修改VCL源码实现自定义输入对话框 在BCB中有两个函数可以实现输入对话框:InputBox和InputQuery,其实I ...
- 024 Android 自定义样式对话框(AlertDialog)
1.AlertDialog介绍 AlertDialog并不需要到布局文件中创建,而是在代码中通过构造器(AlertDialog.Builder)来构造标题.图标和按钮等内容的. 常规使用步骤(具体参见 ...
- 《手把手教你》系列技巧篇(二十八)-java+ selenium自动化测试-处理模态对话框弹窗(详解教程)
1.简介 在前边的文章中窗口句柄切换宏哥介绍了switchTo方法,这篇继续介绍switchTo中关于处理alert弹窗的问题.很多时候,我们进入一个网站,就会弹窗一个alert框,有些我们直接关闭, ...
- Vue自定义组件实现v-model指令
Tips: 本文所描述的Vue均默认是Vue2版本 在我们初次接触Vue的时候,一定会了解到一个语法糖,那就是v-model指令,它带给我们的第一印象就是它可以实现双向绑定 那么,什么是双向绑定?通俗 ...
- Angular的自定义指令以及实例
本文章已收录于: AngularJS知识库 分类: javascript(55) http://www.cnblogs.com/xiaoxie53/p/5058198.html 前面的文章介 ...
- angular directive自定义指令
先来看一下自定义指令的写法 app.directive('', ['', function(){ // Runs during compile return { // name: '', // pri ...
- angular指令,异步调用数据,监控数据的变化(自定义一个表头的指令)
angular框架中提供了很多有效的指令,指令的目的就是为了提高代码的复用率,提高工作效率. 下面我们自己来定义一个指令: 一点建议:写指令名字的时候,尽量不要用用大写,下划线等,否则会有很大的坑等着 ...
随机推荐
- E. Turn Off The TV Educational Codeforces Round 29
http://codeforces.com/contest/863/problem/E 注意细节 #include <cstdio> #include <cstdlib> #i ...
- 读论文Machine Learning for Improved Diagnosis and Prognosis in Healthcare
Deep Learning的基本思想 假设我们有一个系统S,它有n层(S1,…Sn),它的输入是I,输出是O,形象地表示为: I =>S1=>S2=>…..=>Sn => ...
- python基础1--列表
列表 列表是最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 1.定义列表 fruits = ['apple','banana','orange'] 2.通过下标访问列表中的元素, ...
- linux基础命令之sed
什么是sed? sed是一个流编辑器,英文全名为stream editor,流的意思就是能处理文件或者通过管 道传输来的数据.主要针对行,也就是行编辑.默认是不编辑文件的,处理时,把当前 ...
- K8S钩子操作
简介 我们知道,K8S可以在应用容器启动之前先执行一些预定义的操作,比如事先生成一些数据,以便于应用容器在启动的时候使用.这种方式可以通过init container技术实现,具体可以参考<Ku ...
- linux(ubuntu) 安装 node.js
其实几个月之前我已经介绍过使用window版的nvm——wnvm了 1.先安装nvm 日常开发安装node通常会用nvm来安装,因为nvm可以帮我们管理好node的版本 我们通过git来把nvm下载到 ...
- Oracle 中常用数据字典大总结
原文出处:小宝马的爸爸 - 梦想的家园 前面呢,也断断续续的介绍了一些诸如 Sql*Plus 等等关于 Oracle 的基本的内容, 对于 Oracle 这样的大型数据库呢,自身的运行和维护也是个不得 ...
- UIScrollView增加回弹效果
项目中经常要增加上下滑动回弹的效果: self.scrollView.alwaysBounceVertical = YES;
- 转:NSString / NSData / char* 类型之间的转换
1. NSString转化为UNICODE String: (NSString*)fname = @“Test”; char fnameStr[10]; memcpy(fnameStr, [fname ...
- 6.redis的分布式锁
https://www.cnblogs.com/linjiqin/p/8003838.html