自定义对话框(jDialog)
【配置项】jDialog options点击收起
一、接口功能
二、详细配置项
/**
* 对话框的默认配置项目
* @type {Object}
*/
var defaultOptions = {
modal : true, //是否模态窗口
title : null, //窗口标题
content : null, //内容
width : 300, //对话框默认宽度:300px
height : null, //自适应
minWidth : 200, //窗口最小宽度
minHeight : 60, //窗口最小高度
maxWidth : null, //窗口最大宽度:默认无限大
maxHeight : null, //窗口最大高度:默认无限大
padding : '10px', //内边距,默认10px,可以配置上右下左四个值
fixed : true , //是否使用fix属性定位窗口
left : null, //初始显示位置
top : null, //初始显示位置
closeable : true, //是否可关闭
hideOnClose : false, //关闭时是否只隐藏窗口,而不是删除,可通过show方法再次显示
draggable : true, //是否可拖拽
contentType : null, //如果是iframe,请指定url
zIndex : 1024, //默认z-index为1024
resizable : false, //是否可以通过拖拽改变大小
autoShow : true, //是否自动显示
autoMiddle : true, //窗口大小改变时,保持居中
autoClose : 0, //自动关闭,单位毫秒,0表示不自动关闭
showShadow : true, //是否显示阴影
showTitle : true, //是否显示标题
textAlign : 'inherit',//内容对其方式,默认:inherit
buttonAlign : 'right', //按钮对齐方式,可选值:left / right / center,默认:right
dialogClassName : null, //对话框的自定义class
maskClassName : null, //遮罩层的自定义class
wobbleEnable : false, //模态下,点击空白处,是否允许对话框呈现动画摆动
closeOnBodyClick: false, //点击对话框之外的地方自动关闭
buttons : [], //对话框中包含的按钮
events : {} //事件集合,可选项有:show / close / hide / resize / enterKey / escKey
};
三、配置项说明
1、buttons配置项说明
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
 | 
// 完整配置项:Arrayvar buttons = [    {       // 按钮1        text : '确定',          // 按钮上要显示的文字(建议字数不要超过4)        type : 'normal',       // 按钮类型,可选:highlight,normal        handler : function(button,dialog){  // 按钮的点击处理事件            // 两个参数说明:button表示当前按钮的jQuery对象            // dialog表示当前对话框对象        }    },    ... // 可以配置多个按钮]; | 
2、events配置项说明
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
30 
31 
32 
33 
34 
35 
36 
37 
38 
39 
40 
41 
42 
43 
44 
45 
46 
47 
48 
49 
50 
 | 
// 完整配置项:JSON(支持的事件都是可选项)var events = {    /**     * 对话框显示的时候,触发此事件     * @param {jQueryEvent} evt jQuery封装过的event对象,可通过evt.data.dialog取到当前对话框实例     */    show : function(evt){    },    /**     * 对话框隐藏的时候,触发此事件     * @param {jQueryEvent} evt jQuery封装过的event对象,可通过evt.data.dialog取到当前对话框实例     */    hide : function(evt){    },    /**     * 对话框关闭的时候,触发此事件,此事件不会和hide同时触发     * @param {jQueryEvent} evt jQuery封装过的event对象,可通过evt.data.dialog取到当前对话框实例     */    close : function(evt){    },    /**     * window.resize时候,触发此事件     * @param {jQueryEvent} evt jQuery封装过的event对象,可通过evt.data.dialog取到当前对话框实例     */    resize : function(evt){    },    /**     * 窗口处于显示状态,且按下Enter键时候,触发此事件     * @param {jQueryEvent} evt jQuery封装过的event对象,可通过evt.data.dialog取到当前对话框实例     */    enterKey : function(evt){    },    /**     * 窗口处于显示状态,且按下ESC键时候,触发此事件     * @param {jQueryEvent} evt jQuery封装过的event对象,可通过evt.data.dialog取到当前对话框实例     */    escKey : function(evt){    }}; | 
。
jDialog.alert(content [,button][,options])点击收起
一、接口功能
二、参数说明
/**
* 普通alert框
* @param {String} content 提示框的内容,可以是任意HTML代码片段
*
* @param {Object} button 确定按钮,最多只有一个按钮
* @p-config {String} text 按钮文字,默认:确定
* @p-config {String} type 按钮类型,默认:normal,可选:highlight(高亮)
* @p-config {String} handler 按钮点击后的执行动作,默认:关闭当前对话框
*
* @param {Object} options dialog的其他配置项
*
* @return {Object} 当前dialog对象
*/
三、示例
1、只设置content参数
| 
 1 
2 
 | 
// 只设置第一个参数:contentvar dialog = jDialog.alert('欢迎使用jDialog组件,我是alert!'); | 
2、修改默认按钮,可设置第二个参数
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
 | 
// 修改按钮var dialog = jDialog.alert('欢迎使用jDialog组件,我是alert!',{    type : 'highlight',    text : '谢谢!',    handler : function(button,dialog) {        // TODO ...    }});// 如上关于第二个参数(button)的配置,其实每一项都是可选的,如果只需要修改按钮的文字,可以只传入:// { text : '谢谢!' } | 
3、除了按钮外,还可以额外设定dialog的其他参数
| 
 1 
2 
3 
4 
5 
6 
7 
 | 
// 通过options参数,控制alert对话框var dialog = jDialog.alert('欢迎使用jDialog组件,我是alert!',{},{    autoClose : 3000,    // 3s后自动关闭    showShadow: false    // 不显示对话框阴影});// 在options参数中,还可以配置其他所有的参数项 | 
jDialog.confirm(content [,acceptButton][,cancelButton][,options])点击收起
一、接口功能
二、参数说明
/**
* 确认对话框
* @param {String} content 提示框的内容,可以是任意HTML代码片段
*
* @param {Object} acceptButton 确认按钮
* @p-config {String} text 按钮文字,默认:确定
* @p-config {String} type 按钮类型,默认:normal,可选:highlight(高亮)
* @p-config {String} handler 按钮点击后的执行动作,默认:关闭当前对话框
*
* @param {Object} cancelButton 取消按钮
* @p-config {String} text 按钮文字,默认:取消
* @p-config {String} type 按钮类型,默认:normal,可选:highlight(高亮)
* @p-config {String} handler 按钮点击后的执行动作,默认:关闭当前对话框
*
* @param {Object} options dialog的其他配置项
*
* @return {Object} 当前dialog对象
*/
三、示例
1、只设置content参数
| 
 1 
2 
 | 
// 只设置第一个参数:contentvar dialog = jDialog.confirm('欢迎使用jDialog组件,我是confirm!'); | 
2、修改或设置按钮的点击事件
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
 | 
// 修改按钮var dialog = jDialog.confirm('欢迎使用jDialog组件,我是confirm!',{    type : 'highlight',    text : '知道了!',    handler : function(button,dialog) {        alert('感谢!');        dialog.close();    }},{    type : 'normal',    text : '以后用!',    handler : function(button,dialog) {        // TODO ...    }}); | 
3、除了按钮外,还可以额外设定dialog的其他参数
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
 | 
// 通过options参数,控制confirmvar dialog = jDialog.confirm('欢迎使用jDialog组件,我是confirm!',{    handler : function(button,dialog) {        alert('感谢!');        dialog.close();    }},{},{    title : '温馨提示'});// 在options参数中,还可以配置其他所有的参数项 | 
jDialog.message(content [,options])点击展开
一、接口功能
二、参数说明
/**
* 普通消息框,无title
* @param {String} content 消息的内容,可以是任意HTML代码片段
*
* @param {Object} options dialog的其他配置项
*
* @return {Object} 当前dialog对象
*/
三、示例
1、只设置content参数
| 
 1 
2 
 | 
// 只设置第一个参数:contentvar dialog = jDialog.message('欢迎使用jDialog组件,我是message!'); | 
2、额外设定dialog的其他参数
| 
 1 
2 
3 
4 
5 
6 
7 
8 
 | 
// 通过options参数,控制message对话框var dialog = jDialog.message('欢迎使用jDialog组件,我是message!',{    autoClose : 3000,    // 3s后自动关闭    padding : '30px',    // 设置内部padding    modal: false         // 非模态,即不显示遮罩层});// 在options参数中,还可以配置其他所有的参数项 | 
jDialog.tip(content [,anchor] [,options])点击展开
一、接口功能
二、参数说明
/**
* 一个带有小三角箭头的tip消息框,无title,非模态
*
* @param {String} content 消息的内容,可以是任意HTML代码片段
*
* @param {Object} anchor 小三角箭头的相关配置
*
* @p-config {jQ-Elm} target 小箭头需要指向的HTML节点,且用jQuery封装的对象
* @p-config {String} position tip消息框出现的位置(相对于target),可选:
* top / top-left / top-right
* right / right-top / right-bottom
* bottom / bottom-left / bottom-right
* left / left-top / left-bottom
* @p-config {Object} offset 消息框与target之间的位置偏移
* @p-c-item {Integer} top dialog与target之间顶部偏移,position中含top时生效
* @p-c-item {Integer} right dialog与target之间右侧偏移,position中含right时生效
* @p-c-item {Integer} bottom dialog与target之间底部偏移,position中含bottom时生效
* @p-c-item {Integer} left dialog与target之间左侧偏移,position中含left时生效
* @p-config {Integer} trianglePosFromStart 小三角距离弹窗边缘的距离
*
* @param {Object} options dialog的其他配置项
*
* @return {Object} 当前dialog对象
*/
三、示例
1、设置content和anchor参数
| 
 1 
2 
3 
4 
 | 
// 设置content和anchor参数var dialog = jDialog.tip('欢迎使用jDialog组件,我是tip!',{    target : $('button')}); | 
2、通过anchor参数改变dialog的方向和位置
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
 | 
// demo1:dialog出现在target上方10px处,且小三角居中var dialog = jDialog.tip('欢迎使用jDialog组件,我是tip!',{    target : $('button'),    position : 'top',    offset : {        top : 10    }});// demo2:dialog出现在target右侧,且上边缘对其、小三角居中var dialog = jDialog.tip('欢迎使用jDialog组件,我是tip!',{    target : $('button'),    position : 'right-top'});// demo3:dialog出现在target左侧,且上边缘对其、小三角距离上边缘20pxvar dialog = jDialog.tip('欢迎使用jDialog组件,我是tip!',{    target : $('button'),    position : 'left-top',    trianglePosFromStart : 20}); | 
mark:可以通过offset配置项调整tip与target之间的偏移,position总共12中选择
3、额外设定dialog的其他参数
| 
 1 
2 
3 
4 
5 
6 
7 
8 
 | 
// 通过options参数,控制tip对话框var dialog = jDialog.tip('欢迎使用jDialog组件,我是tip!',{    target : $('button')},{    autoClose : 1000});// 在options参数中,还可以配置其他所有的参数项 | 
jDialog.iframe(url [,options])点击展开
一、接口功能
二、参数说明
/**
* 在对话框中显示一个iframe页面
* @param {String} url 消息的内容
*
* @param {Object} options dialog的其他配置项
*
* @return {Object} 当前dialog对象
*/
三、示例
1、只设置url参数
| 
 1 
2 
 | 
// 只设置第一个参数:url | 
2、额外设定dialog的其他参数
| 
 1 
2 
3 
4 
5 
6 
7 
8 
 | 
// 通过options参数,控制iframe对话框    title : '百度一下,你就知道',    width : 800,    height : 500});// 在options参数中,还可以配置其他所有的参数项 | 
jDialog.dialog(options)点击展开
一、接口功能
二、参数说明
/**
* 自定义对话框,最通用最基础的一个API接口
* @param {Object} options dialog的其他配置项
* @return {Object} 当前dialog对象
*/
三、示例
1、通过options参数直接自定义dialog
| 
 1 
2 
3 
4 
5 
6 
7 
 | 
// 通过options参数,控制dialogvar dialog = jDialog.dialog({    title : '自定义对话框',    content : '大家好,我是jDialog.dialog,接口很友好的,欢迎使用!'});// 在options参数中,还可以配置其他所有的参数项 | 
2、给对话框配置两个按钮
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
 | 
// 通过options参数,控制dialogvar dialog = jDialog.dialog({    title : '自定义对话框',    content : '大家好,我是jDialog.dialog!',    buttons : [        {            type : 'highlight',            handler : function(button,dialog){                dialog.close();            }        }    ]});// 在options参数中,还可以配置其他所有的参数项 | 
3、给对话框增加事件监听
| 
 1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 
27 
28 
29 
 | 
// 通过options参数,控制dialogvar dialog = jDialog.dialog({    title : '自定义对话框',    content : '大家好,我是jDialog.dialog!',    buttons : [        {            type : 'highlight',            handler : function(button,dialog){                dialog.hide();            }        }    ],    events : {        show : function(evt){            alert('show: ' + evt.data.dialog.content());        },        hide : function(evt){            alert('hide');        },        close : function(evt){            alert('close');        },        resize : function(evt){            alert('resize');        }    }});// 在options参数中,还可以配置其他所有的参数项 | 
【实例方法】dialog.title(title)点击展开
【实例方法】dialog.content(content)点击展开
【实例方法】dialog.width(width)点击展开
【实例方法】dialog.height(height)点击展开
【实例方法】dialog.position(position)点击展开
一、接口功能
二、参数说明
/**
* 设置/获取 对话框的位置
* @param {Object} pos 需要设置的位置;不设置参数时,表示获取窗口位置
* @p-config {Integer} left 窗口位置left坐标
* @p-config {Integer} top 窗口位置top坐标
* @return {Object} 设置位置时,返回窗口对象;获取窗口位置时,返回位置
*/
【实例方法】dialog.middle()点击展开
一、接口功能
二、参数说明
/**
* 设置窗口在浏览器中垂直水平居中对其
* @return {Object} 当前窗口对象
*/
三、示例
1、设置窗口居中对其
| 
 1 
2 
 | 
// 设置窗口对其,方法返回dialog对象本身dialog = dialog.middle(); | 
【实例方法】dialog.buttons(buttons)点击展开
一、接口功能
二、参数说明
/**
* 自定义对话框
* @param buttons 对话框按钮
* [{
* type : 'normal', // normal 或者 highlight
* text : '确定', // 按钮的显示文本
* handler : function(button,dialog){ // 按钮点击事件
* // TODO ...
* }
* }]
* @return {Object} 设置按钮时,返回窗口对象;获取窗口按钮时,返回按钮
*/
【实例方法】dialog.show()点击展开
一、接口功能
二、参数说明
/**
* 显示对话框
* @return {Object} 返回当前窗口对象
*/
三、示例
1、显示对话框
| 
 1 
2 
 | 
// 显示对话框,方法返回dialog对象本身dialog = dialog.show(); | 
【实例方法】dialog.hide()点击展开
一、接口功能
二、参数说明
/**
* 隐藏对话框
* @return {Object} 返回当前窗口对象
*/
三、示例
1、隐藏对话框
| 
 1 
2 
 | 
// 隐藏对话框,方法返回dialog对象本身dialog = dialog.hide(); | 
【实例方法】dialog.close()点击展开
一、接口功能
二、参数说明
/**
* 关闭对话框
* @return {Object} 返回当前窗口对象
*/
三、示例
1、关闭对话框
| 
 1 
2 
 | 
// 关闭对话框,方法返回dialog对象本身dialog = dialog.close(); | 
自定义对话框(jDialog)的更多相关文章
- 炫酷JQUERY自定义对话框插件JDIALOG_JDIALOG弹出对话框和确认对话框插件
		
多种类型自定义对话框插件jDialog是一款基于jquery实现的轻量级多种类型的自定义对话框插件 在项目开发中.一般会美化 alert(); 的样式.那么今天我就和大家分享一款非常炫的插件 先来看一 ...
 - Android—关于自定义对话框的工具类
		
开发中有很多地方会用到自定义对话框,为了避免不必要的城府代码,在此总结出一个工具类. 弹出对话框的地方很多,但是都大同小异,不同无非就是提示内容或者图片不同,下面这个类是将提示内容和图片放到了自定义函 ...
 - Android中的AlertDialog使用示例五(自定义对话框)
		
在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,AlertDialog实现方法为建造者模式. ...
 - jquery自定义对话框alert、confirm和prompt
		
jQuery Alert Dialogs,又一个基于jQuery的提示框插件,主要包括Alert.Confirm.prompt这三种,还有一个高级范例,可以在提示框内嵌入HTML语言,可以自定义风格样 ...
 - Android自定义对话框
		
在android中有自带的对话框,为了美观,很多开发者会使用自定义对话框,如下图: 点击“弹出自定义对话框按钮后”显示如图效果. 首先要自己定义一个xml文件定义自己对话框的样式: <?xml ...
 - Android项目实战(七):Dialog主题Activity实现自定义对话框效果
		
想必大家都用过Dialog主题的Activity吧,用它来显示自定义对话框效果绝对是一个非常不错的选择. 即把activity交互界面以Dialog的形式展现出来,Dialog主题的Activity大 ...
 - Android 自定义对话框
		
Android实现自定义对话框效果: 核心代码: package com.example.diydialog; import android.os.Bundle; import android.app ...
 - android继承Dialog实现自定义对话框
		
有时需要自定义对话框,可以使用AlterDialog.Bulider,比如下面的代码片段 new AlertDialog.Builder(self) .setTitle("标题") ...
 - 关于JFace的自定义对话框(Dialog类)
		
仅仅是使用MessageDialog,InputDialog等JFace中现成的对话框类是无法满足实际项目开发需要的. 很多时候都需要自己定制对话框,自定义对话框只要在Dialog类的基础上作扩展就行 ...
 
随机推荐
- JSON: Circular Dependency Errors
			
If you’re using Object Relational Mapping frameworks like Hibernate, and are using the bi-directiona ...
 - mysql10---索引优化
			
D:\MYSQL\mysql-winx64\data\WIN-20171216YUR-slow.log是慢日志: ; ; # Time: :.472000Z # # Query_time: Rows_ ...
 - Lightoj 1019 - Brush (V)
			
算出从点1到点n的最短路径. /* *********************************************** Author :guanjun Created Time :2016 ...
 - myeclipse 8.6安装SVN插件
			
方法二: 安装subclipse, SVN 插件 1.从官网下载site-1.6.9.zip文件,网址是:subclipse.tigris.org, 2.从中解压出features与plug ...
 - 深入探析c# Socket
			
最近浏览了几篇有关Socket发送消息的文章,发现大家对Socket Send方法理解有所偏差,现将自己在开发过程中对Socket的领悟写出来,以供大家参考. (一)架构 基于TCP协议的Socket ...
 - CSYZDay2模拟题解
			
T1.rotate [问题描述] ZYL有N张牌编号分别为1, 2,……,N.他把这N张牌打乱排成一排,然后他要做一次旋转使得旋转后固定点尽可能多.如果第i个位置的牌的编号为i,我们就称之为固定点.旋 ...
 - openStack 镜像制作,镜像裁剪一般步骤
			
镜像制作一般裁剪步骤 1, linux系统安装CentOs/RHEL Desktop桌面系统,分区划分但分区/挂载点.设置Selinux=disabled关闭iptables安装cloud-init[ ...
 - Winpcap笔记4之不用回调函数捕获数据包
			
函数1: pcap_next_ex(pcap_t* p, struct pcap_pkthdr** pkt_header, const u_char* ...
 - log4j没有作用,druid的日志信息还打印在控制台的解决办法
			
log4j没有实现类,需引入slf4j实现
 - E20180225-hm-xa
			
variation n. 变化,变动; 变异,演变; 变奏曲; 变量; auxiliary adj. 辅助的 subscript adj. 下标的,写在下方的,脚注的; n. 下标,脚注,下角数 ...