ymPrompt.js消息提示组件
转载:https://www.cnblogs.com/linzheng/archive/2010/11/15/1878058.html
使用说明:
1、在页面中引入ymPrompt.js。如:<script type="text/javascript" src="ymPrompt.js"></script>
2、在页面中引入对应的皮肤文件的CSS,如:<link rel="stylesheet" type="text/css" href="skin/qq/ymPrompt.css" />
3、自定义组件的默认配置信息(此步骤可选,该方法可以在任意时间调用)
页面的js中通过ymPrompt.setDefaultCfg(cfg)方法修改组件部分或全部的默认属性。
如:ymPrompt.setDefaultCfg({maskAlpha:0.2,maskAlphaColor:'#00f'})
组件的默认配置(对于没有设定的项将采用该配置项的默认值):
{
titleBar:true, //显示标题栏
fixPosition:true, //随滚动条浮动
dragOut:false, //不允许拖出页面
autoClose:true, //点击按钮后自动关闭页面
maskAlphaColor:'#000', //遮罩透明色
maskAlpha:0.1, //遮罩透明度
winAlpha:0.8, //拖动窗体时 窗体的透明度,默认为0.8
title: '标题', //消息框标题
message: '内容', //消息框按钮
width: 300, //宽
height: 185, //高
iframe:false,
btn:null,
icoCls:'',
handler: function(){} //回调事件
showMask: true, //是否显示遮罩
winPos: 'c', //弹出窗口默认位置
closeBtn:true, //是否显示关闭按钮
//按钮文本,可通过自定义这些属性实现本地化
closeTxt: '关闭',
okTxt:' 确 定 ',
cancelTxt:' 取 消 '
}
4、根据您的需要调用相应的消息函数(两种参数传入方式):
ymPrompt.alert(参数) //消息提示类型
ymPrompt.succeedInfo(参数) //成功信息类型
ymPrompt.errorInfo(参数) //错误信息类型
ymPrompt.confirmInfo(参数) //询问消息类型
ymPrompt.win(参数) //自定义窗口类型
参数传入方式包含两种:
第一种即传统的参数传入,按照顺序传入相应的参数值即可(一定要按照顺序),对于不需要设定的值请传入null。如ymPrompt.alert('内容',null,null,'标题')
参数顺序:message,width,height,title,handler,maskAlphaColor,maskAlpha,
iframe,icoCls,btn,autoClose,fixPosition,dragOut,titleBar,showMask,winPos,winAlpha
(推荐)第二种即JSON的传入方式,需要指定字段名,没有顺序,根据需要设定相关属性。如ymPrompt.alert({title:'标题',message:'内容'})
五个方法的参数意义完全相同(所有参数均为可选,不传入则使用默认参数值),具体含义如下:
message:消息组件要显示的内容,默认为“内容”。
width:消息框的宽度,默认为300。
height:消息框的高度,默认为185。
title:消息组件标题,默认为“标题”
handler:回调函数。当确定/取消/关闭按钮被点击时会触发该函数并传入点击的按钮标识。如ok代表确定,cancel代表取消,close代表关闭
maskAlphaColor:遮罩的颜色,默认为黑色。
maskAlpha:遮罩的透明度,默认为0.1。
fixPosition:设定是否弹出框随滚动条一起浮动,保持在屏幕的固定位置,默认为true
dragOut:设定是否允许拖出屏幕范围,默认为false。
autoClose:设定用户点击窗口中按钮后自动关闭窗口,默认为true(设定为false后程序中可以通过调用close方法关闭)。
titleBar:是否显示标题栏,默认显示。注意,如果没有标题栏需要自己在程序中控制关闭。
showMask:是否显示遮罩层,默认为true
winPos:弹出窗口的位置,支持8种内置位置(c,l,t,r,b,lt,rt,lb,rb)及自定义窗口坐标,默认为c。
各参数意义:c:页面中间,l:页面左侧,t:页面顶部,r:页面右侧,b:页面顶部,lt:左上角,rt:右上角,lb:左下角,rb:右下角
winAlpha:弹出窗体拖动时的透明度,默认为0.8
//以下三个参数主要用于win方法(当然你也可以通过设定这些覆盖前面四个消息类型的默认属性)。
iframe:是否使用iframe方法加载内容,该属性如果为true或者object,组件则尝试将message内容作为url进行加载(如果属性值为一个object,则将object的内容添加为iframe的属性,如iframe:{id:'myId',name:'myName',src:'http://www.baidu.com'}则iframe的id为myId,name为myName,src为http://www.baidu.com)。默认为false。
icoCls:图标类型。传入的内容为className,具体写法可以参考ymprompt.css中对图标的定义方式。默认为空。
btn:按钮定义。传入的是数组形式。每个按钮的格式为['按钮文本','按钮标识'],
如[['确定','ok'],['取消','cancel'],['关闭','close']]等。
注意单个按钮应该是这样的:[['确定','ok']]
closeBtn:是否显示关闭按钮,默认为true(显示)。
//以下参数可用于对组件语言本地化,如用于英文等系统中
okTxt:确定按钮的文本描述,默认为“确定”
cancelTxt:取消按钮的文本描述,默认为“取消”
closeTxt:关闭按钮的文本描述(鼠标放在关闭按钮上时显示),默认为“关闭”
5、操作接口:
属性:
version:当前版本号 如:alert(ymPrompt.version)
pubDate:当前版本的发布日期 如:alert(ymPrompt.pubDate);
cfg:组件的当前的默认配置
方法:
setDefaultCfg(cfg):设定组件的默认属性,设定后的所有弹出均默认采用cfg中的设置。
如:ymPrompt.setDefaultCfg({maskAlpha:0.2,maskAlphaColor:'#00f'}); //设定遮罩层颜色为蓝色,透明度0.2
getPage():在iframe窗口模式下,获取到iframe的dom对象。
如:alert(ymPrompt.getPage().contentWindow.document.body.outerHTML); //获取iframe页面的html内容
resizeWin(w,h):通过程序动态修改窗口的大小。参数:w:宽度,h:高度
如:ymPrompt.resizeWin(400,300); //修改弹出框宽度为400px,高度为300px
doHandler(sign,autoClose):模拟触发某个按钮的点击事件。参数sign:传给回调函数的标识,autoClose:是否自动关闭窗口(默认采用全局配置)
如:ymPrompt.doHandler('ok',false); //触发确定按钮的点击事件,并且执行完回调函数后不关闭窗口
getButtons():获取当前弹出窗口的所有按钮对象,返回结果是一个对象集合(数组)。
如:var btnID=ymPrompt.getButtons()[0].id; //获取第一个按钮的id
close():关闭当前弹出的窗口 如:ymPrompt.close()
6、其他说明:如果觉得“对象.方法”的调用方式比较麻烦,可以采用如下方式简化调用:
在调用之前设定var Alert=ymPrompt.alert。之后就可以使用Alert()的方式进行
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
转载2:https://www.cnblogs.com/tanzhen/p/4173802.html
JS弹出窗、弹出层组件,ymPrompt V4.0使用简介(转)
ymPrompt从最简单的1.0版本到现在的4.0版本,代码共经历了四次较大的改动,组件在功能上有了很大的改进,应用灵活 度更大,可应用环境的环境更加广泛,特别在4.0版本中加入对遮罩显示隐藏、按钮/图标的自定义、组件语言的控制、窗口悬浮位置等控制功能,更加的增强了 组件的应用范围,使其不仅仅可以使用到模拟alert弹出之类的应用中,更可实现类似qq消息提示,登陆窗口,进度条等效果。
但是,任何的 事情都具有其两面性,随着功能的增多,组件的使用的复杂度也在逐步增加,好在组件每次更新都努力在兼容之前版本的基础上做修改,这使得你可以以很简单的方 式定制简单的弹出框,也可以以较复杂的参数来定制更加强大的弹出框。不要被demo及使用说明中的一堆参数和方法所吓倒,很多参数也许我们可能并不会用 到,找到我们真正需要的那一两个参数就足够了。
本打算在年前发布4.0版,但由于一些功能的实现一直不太稳定,加上年前工作的原因,推迟到 年后才发布,该版本的代码在3.0的基础上做了比较大的改动,修正了之前版本的一些问题,增加了几个功能,不少是网友对我提出的,在此感谢。在完善和改进 组件的同时,尽管我一直在努力保持组件的代码的最小化,任何一个字节的代码能省则省,但限于个人能力,因此代码可能仍然不是最简洁的,如果哪位大侠有好的 改进意见,请不吝指教!
其中主要改进内容如下:
4.0版演示地址:http://tech.cncms.com/demo/js/ymPrompt4.0/demo.html
4.0版下载地址:ymPrompt-4.0-B-20090302.rar
覆盖Frameset示例:http://tech.cncms.com/demo/js/ymPrompt4.0/frameset.html
ymPrompt 调用方法及参数说明
- 在页面中引入ymPrompt.js。如:<script type="text/javascript" src="ymPrompt.js"></script>
- 在页面中引入对应的皮肤文件的CSS,如:<link rel="stylesheet" type="text/css" href="skin/qq/ymPrompt.css" />
- 自定义组件的默认配置信息(此步骤可选,该方法可以在任意时间调用)
页面的js中通过ymPrompt.setDefaultCfg(cfg)方法修改组件部分或全部的默认属性。
如:ymPrompt.setDefaultCfg({maskAlpha:0.2,maskAlphaColor:'#00f'})组件的默认配置(对于没有设定的项将采用该配置项的默认值):
{
message: '内容', //消息框按钮
width: 300, //宽
height: 185, //高
title: '标题', //消息框标题
handler: function() {}, //回调事件
maskAlphaColor: '#000', //遮罩透明色
maskAlpha: 0.1, //遮罩透明度iframe: false, //iframe模式
icoCls: '', //图标的样式
btn: null, //按钮配置
autoClose: true, //点击关闭、确定等按钮后自动关闭
fixPosition: true, //随滚动条滚动
dragOut: false, //不允许拖出窗体范围
titleBar: true, //显示标题栏
showMask: true, //显示遮罩
winPos: 'c', //在页面中间显示
winAlpha:0.8, //拖动窗体时窗体的透明度
closeBtn:true, //是否显示关闭按钮
showShadow:false, //不显示阴影,只对IE有效
useSlide:false, //不使用淡入淡出
slideCfg:{increment:0.3,interval:50}, //淡入淡出配置//按钮文本,可通过自定义这些属性实现本地化
closeTxt: '关闭',
okTxt:' 确 定 ',
cancelTxt:' 取 消 ',
msgCls:'ym-content' //消息内容的样式
minBtn:false, //不显示最小化按钮
minTxt:'最小化',
maxBtn:false, //不显示最大化按钮
maxTxt:'最大化'
allowSelect:false, //是否允许选择消息框内容,默认不允许
allowRightMenu:false //是否允许在消息框使用右键,默认不允许
} - 根据您的需要调用相应的消息函数(两种参数传入方式):
- ymPrompt.alert(参数) //消息提示类型
- ymPrompt.succeedInfo(参数) //成功信息类型
- ymPrompt.errorInfo(参数) //错误信息类型
- ymPrompt.confirmInfo(参数) //询问消息类型
- ymPrompt.win(参数) //自定义窗口类型
参数传入方式包含两种:
- 第一种即传统的参数传入,按照顺序传入相应的参数值即可(一定要按照顺序),对于不需要设定的值请传入null。如ymPrompt.alert('内容',null,null,'标题')
参数顺序上面的默认配置中参数顺序一致 - (推荐)第二种即JSON的传入方式,需要指定字段名,没有顺序,根据需要设定相关属性。如ymPrompt.alert({title:'标题',message:'内容'})
五个方法的参数意义完全相同(所有参数均为可选,不传入则使用默认参数值),具体含义如下:
- message:消息组件要显示的内容,默认为“内容”。
- width:消息框的宽度,默认为300。
- height:消息框的高度,默认为185。
- title:消息组件标题,默认为“标题”
- handler:回调函数。当确定/取消/关闭按钮被点击时会触发该函数并传入点击的按钮标识。如ok代表确定,cancel代表取消,close代表关闭
- maskAlphaColor:遮罩的颜色,默认为黑色。
- maskAlpha:遮罩的透明度,默认为0.1。
- fixPosition:设定是否弹出框随滚动条一起浮动,保持在屏幕的固定位置,默认为true
- dragOut:设定是否允许拖出屏幕范围,默认为false。
- autoClose:设定用户点击窗口中按钮后自动关闭窗口,默认为true(设定为false后程序中可以通过调用close方法关闭)。
- titleBar:是否显示标题栏,默认显示。注意,如果没有标题栏需要自己在程序中控制关闭。
- showMask:是否显示遮罩层,默认为true
- winPos:弹出窗口的位置,支持8种内置位置(c,l,t,r,b,lt,rt,lb,rb)及自定义窗口坐标,默认为c。
各参数意义:c:页面中间,l:页面左侧,t:页面顶部,r:页面右侧,b:页面顶部,lt:左上角,rt:右上角,lb:左下角,rb:右下角 - winAlpha:弹出窗体拖动时的透明度,默认为0.8
//以下三个参数主要用于win方法(当然你也可以通过设定这些覆盖前面四个消息类型的默认属性)。
- iframe:是否使用iframe方法加载内容,该属性如果为true或者object,组件则尝试将message内容作为url进行加载(如 果属性值为一个object,则将object的内容添加为iframe的属性,如iframe: {id:'myId',name:'myName',src:'http://www.baidu.com'}则iframe的id为myId,name 为myName,src为http://www.baidu.com)。默认为false。
- icoCls:图标类型。传入的内容为className,具体写法可以参考ymprompt.css中对图标的定义方式。默认为空。
- btn:按钮定义。传入的是数组形式。每个按钮的格式为['按钮文本','按钮标识'],
如[['确定','ok'],['取消','cancel'],['关闭','close']]等。
注意单个按钮应该是这样的:[['确定','ok']] - closeBtn:是否显示关闭按钮,默认为true(显示)。
- showShadow:是否启用弹出框阴影效果(IE Only),默认为false
- useSlide:f是否启用弹出框的渐显渐隐效果,默认为false
- slideCfg:渐变效果的配置信息,参数格式为object,属性包括incerment:透明度每次增加的值,interval:变化的速度。例如:{incerment:0.3,interval:50}。该参数仅在useSlide为true时有效
//以下参数可用于对组件语言本地化,如用于英文等系统中
- okTxt:确定按钮的文本描述,默认为“确定”
- cancelTxt:取消按钮的文本描述,默认为“取消”
- closeTxt:关闭按钮的文本描述(鼠标放在关闭按钮上时显示),默认为“关闭”
- minTxt:最小化按钮的文本描述,默认为“最小化”
- maxTxt:最大化按钮的文本描述,默认为“最大化”
- minBtn:是否显示最小化按钮,默认为false
- maxBtn:是否显示最大化按钮,默认为false
- allowSelect:是否允许选择消息框内容,默认为false
- allowRightMenu:是否允许在消息框中使用右键,默认为false
- 操作接口:
- 属性:
- version:当前版本号 如:alert(ymPrompt.version)
- pubDate:当前版本的发布日期 如:alert(ymPrompt.pubDate);
- cfg:组件的当前的默认配置
- 方法:
- setDefaultCfg(cfg):设定组件的默认属性,设定后的所有弹出均默认采用cfg中的设置。
如:ymPrompt.setDefaultCfg({maskAlpha:0.2,maskAlphaColor:'#00f'}); //设定遮罩层颜色为蓝色,透明度0.2 - getPage():在iframe窗口模式下,获取到iframe的dom对象。
如:alert(ymPrompt.getPage().contentWindow.document.body.outerHTML); //获取iframe页面的html内容 - resizeWin(w,h):通过程序动态修改窗口的大小。参数:w:宽度,h:高度
如:ymPrompt.resizeWin(400,300); //修改弹出框宽度为400px,高度为300px - doHandler(sign,autoClose):模拟触发某个按钮的点击事件。参数sign:传给回调函数的标识,autoClose:是否自动关闭窗口(默认采用全局配置)
如:ymPrompt.doHandler('ok',false); //触发确定按钮的点击事件,并且执行完回调函数后不关闭窗口 - getButtons():获取当前弹出窗口的所有按钮对象,返回结果是一个对象集合(数组)。
如:var btnID=ymPrompt.getButtons()[0].id; //获取第一个按钮的id - close():关闭当前弹出的窗口 如:ymPrompt.close()
- max():最大化弹出窗口。
- min():最小化弹出窗口
- normal():窗口普通弹出状态
- 其他说明:如果觉得“对象.方法”的调用方式比较麻烦,可以采用如下方式简化调用:
在调用之前设定var Alert=ymPrompt.alert。之后就可以使用Alert()的方式进行调用
ymPrompt.js消息提示组件的更多相关文章
- js消息提示框插件-----toastr用法
(本文系转载) 因为个人项目中有一个提交表单成功弹出框的需求,从网上找了一些资料,发现toastr这个插件的样式还是不错的.所以也给大家推荐下,但是网上的使用资料不是很详细,所以整理了一下,希望能给 ...
- 原生wcPop.js消息提示框(移动端)、内含仿微信弹窗效果
wcPop.js移动端消息对话框插件是之前的wxPop.js的升级版,优化了js和css,并且新增了仿微信弹窗效果, 是一款含有多种情景模式的原生模态消息对话框代码,可用于替代浏览器默认的alert弹 ...
- 消息提示插件toastr.js与Messenger组件
Toastr是一款基于jQuery的通知插件,可以灵活的自定义样式和拓展其功能! toastr是一个基于Jquery简单.漂亮的消息提示插件,使用简单.方便,可以根据设置的超时时间自动消失. cdn最 ...
- 【C#】组件发布:MessageTip,轻快型消息提示窗
-------------201610212046更新------------- 更新至2.0版,基本完全重写,重点: 改为基于原生LayeredWindow窗体和UpdateLayeredWindo ...
- [js开源组件开发]tip提示组件
tip提示组件 常见的应用场景中,总是难免会遇到提示信息,比如显示不完全时需要鼠标移上去显示title,比如验证时的错误提示,比如操作按钮的辅助说明等,所以我独立出来了一个小的js组件,tip提示组件 ...
- 基于jquery的消息提示框toastr.js
//消息提示全局配置 toastr.options = { "closeButton": false,//是否配置关闭按钮 "debug": false,//是 ...
- JS~Boxy和JS模版实现一个标准的消息提示框
面向对象的封装 面向对象一个入最重要的特性就是“封装”,将一些没有必要公开的方法和属性以特定的方式进行组装,使它对外只公开一个接口,外界在调用它时,不需要关注它实现的细节,而只要关注它的方法签名即可, ...
- element组件dialog关闭时Message消息提示抖动问题
在页面内容较多,出现滚动条时使用element组件里的dialog组件,当关闭dialog组件的同时弹出Message消息提示时,Message会抖动一下. 在页面有滚动条的情况先打开dialog时, ...
- 【C#】无损转换Image为Icon 【C#】组件发布:MessageTip,轻快型消息提示窗 【C#】给无窗口的进程发送消息 【手记】WebBrowser响应页面中的blank开新窗口及window.close关闭本窗体 【手记】调用Process.EnterDebugMode引发异常:并非所有引用的特权或组都分配给呼叫方 【C#】DataRowState演变备忘
[C#]无损转换Image为Icon 如题,市面上常见的方法是: var handle = bmp.GetHicon(); //得到图标句柄 return Icon.FromHandle(handle ...
随机推荐
- 【总结整理】WebGIS学习-thinkGIS(三):关于影像金字塔、瓦片行列号、分辨率resolution
http://www.thinkgis.cn/topic/541a5206da8db186fd0673ba 1.前言 在上一节中我们知道了屏幕上一像素等于实际中多少单位长度(米或经纬度)的换算方法,而 ...
- MSScriptControl详解(可实现在C#等语言中调用JAVASCRIPT代码)
ScriptControl接口 属性名称 类型 备注 AllowUI BOOL 检测是否允许运行用户的接口元素.如果为False,则诸如消息框之类的界面元素不可见. CodeObject Object ...
- gitlab 添加ssh秘钥
在创建新的ssh秘钥对之前,要先确认一下电脑中是否已经有了一对秘钥: Git Bash on Windows / GNU/Linux / macOS / PowerShell: cat ~/.ssh/ ...
- linux环境安装python
linux环境下安装python3,一步一步来吧! 安装python3 安装readline-devel依赖 ,用于解决python3安装完成后,退格和方向键乱码问题 yum install read ...
- Linux 终端命令行提示符的艺术--PS1进阶
话不多说,先瞅瞅我的命令行提示符(有点大): 图中命令行解释:┌[阳历日期/农历日期 时间]├[当前目录下目录数+当前目录下文件数][当前绝对目录]└[用户名@主机名-第几个终端 ╰_╯] 相关配置文 ...
- hadoop运行故障问题解决1——datanode节点启动后自动关闭
ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Incompatible namespaceID ...
- Entity Framework Tutorial Basics(1):Introduction
以下系列文章为Entity Framework Turial Basics系列 http://www.entityframeworktutorial.net/EntityFramework5/enti ...
- python运算优先级
运算符优先级(下面的优先级高) 运算符 描述 lambda Lambda表达式 or 布尔“或” and 布尔“与” not x 布尔“非” in not in 成员测试 is ...
- 海量推荐系统:mapreduce的方法
1. Motivation 2. MapReduce MapReduce是一种数据密集型并行计算框架. 待处理数据以"块"为单位存储在集群机器文件系统中(HDFS),并以(key, ...
- linux 进程间通信机制(IPC机制)一消息队列
消息队列提供了一种从一个进程向另一个进程发送一个数据块的方法.每个数据块都被认为含有一个类型,接收进程可以独立地接收含有不同类型的数据结构.我们可以通过发送消息来避免命名管道的同步和阻塞问题.但是消息 ...