===============================================================================
组件名称:ymPrompt消息提示组件 2.0
===============================================================================
组件说明:在web开发中,对于浏览器默认的消息提示框(如alert,confirm等)外观无法控制,为了实现更好的界面效果,于是模拟系统的消息提示框实现了该组件。在外观上可以通过css进行完全的控制。
===============================================================================
组件功能介绍:
1、调用方式简单,直接使用ymPrompt.alert()的方式调用,传入相应的参数即可。
2、兼容IE6.0+、FF1.5+、Opear9+(在Opear下显示有一个小缺陷),兼容HTML4/XHTML1.0页面渲染模式。
3、完全的CSS皮肤定制功能,所有外观包括显示图标/关闭按钮等都可以通过css设置。目前提供了五种皮肤,Vista、QQ、dmm-green、ExtBlue和BlackColl。有兴趣可以修改样式表文件定义新的皮肤。
4、提供四种消息类型。分别为消息提示、成功信息、错误信息、询问信息。
5、弹出消息框时屏蔽页面其它元素的操作,自动隐藏页面select及iframe下select(无限级select隐藏),并遮罩iframe等元素。
6、页面select控件状态还原时保持原状态,即如果原来select就是隐藏的,则消息框弹出并关闭后该select仍保持隐藏状态,而只显示原本显示的select。
7、消息组件弹出时屏蔽除Tab和回车外的几乎所有键盘操作(包括F5),“消息确认框”支持“tab键/左右方向键”切换确定/取消焦点。
8、可以页面加载的任意时间调用,如页面初始化时调用,页面加载完成后调用。
9、支持通过JSON和传统的参数传入方式。如ymprompt.alert('消息内容',300,200,'消息标题',handler)和ymprompt.alert({message:'消息内容',width:300,height:200,title:'消息标题',handler:handler}),这两种写法是等价的。
10、只需要一个回调函数,可捕获确定、取消及关键按钮的点击事件。函数改变了1.0版需要对确定和取消按钮分别写回调函数及不支持关闭事件的缺陷,
11、完全的封装,对外只暴露一个ymPrompt变量,有效防止与使用者程序变量的冲突。
12、程序(js)与样式(css)的完全分离,取消了1.0中自动加载css的功能,用户可根据需要加载对应css样式表单,降低了对样式配置的复杂度。
==============================================================================
2.0与1.0改进和差异:
1、2.0中程序不再自动加载样式表,由用户将样式表引入到页面中,相比1.0对样式的控制更加简单,且降低了程序实现的复杂性。
2、2.0除了支持传统的参数传入外,还支持JSON,通过json方式,不用再记忆参数顺序。
3、2.0解决了1.0在IE和FF下显示高度不一致的问题。
4、2.0代码封装程度更高,进对外公开一个变量ymPrompt,更好的防止变量冲突问题。
5、2.0代码更加简洁,文件更小,压缩版的由7k减为5k,未压缩的由16k减为11k。2.0中程序实现方式的改变也使性能相比1.0有所提升。
6、2.0回调函数变为一个,1.0中需要分别对确定和取消/关闭分别写回调函数,2.0中只需要一个回调函数,组件会为回调函数传入点击类型,如'ok','cancel','close',解决了1.0无法区分取消与关闭的问题。
7、调用方法及参数的一些小改变,如Alert改为ymprompt.alert(),当然你可以在你的程序中通过Alert=ymprompt.alert保留Alert的调用方式。
8、2.0提供了对遮罩的样式控制(颜色及透明度)。
===============================================================================
调用方法及参数说明:
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、根据您的需要调用相应的消息函数:
ymPrompt.alert(message,width,height,title,handler,maskAlphaColor,maskAlpha) //消息提示类型
ymPrompt.succeedInfo(....) //成功信息类型
ymPrompt.errorInfo(...) //错误信息类型
ymPrompt.confirmInfo(....) //询问消息类型
四个方法的参数个数及意义完全相同:
message:消息组件要显示的内容,默认为“内容”。
width:消息框的宽度,默认为300。
height:消息框的高度,默认为185。
title:消息组件标题,默认为“标题”
handler:回调函数。当确定/取消/关闭按钮被点击时会触发该函数并传入点击的按钮标识。如ok代表确定,cancel代表取消,close代表关闭
maskAlphaColor:遮罩的颜色,默认为黑色。
maskAlpha:遮罩的透明度,默认为0.1。
参数传入方式包含两种:
第一种即传统的参数传入,按照顺序传入相应的参数值即可,对于不需要设定的值请传入null。如ymPrompt.alert('内容',null,null,'标题')
第二种即JSON的传入方式,需要指定字段名。如ymPrompt({title:'标题',message:'内容'})
4、其他说明:如果觉得“对象.方法”的调用方式比较麻烦,可以采用如下方式简化调用:
在调用之前设定var Alert=ymPrompt.alert。之后就可以使用Alert()的方式进行调用。
===============================================================================
演示地址:
QQ皮肤: http://www.ajaxbbs.net/test/ymPrompt2.0/demo.html
Vista皮肤: http://www.ajaxbbs.net/test/ymPrompt2.0/demoVista.html
详细介绍及下载地址:http://www.ajaxbbs.net/ymPrompt2.0/
网站: http://www.ajaxbbs.net
作者: 闫威(yemoo|神秘网人)
MSN: yanwei8410(at)hotmail.com
E-Mail:netman8410(at)163.com
QQ:278384986
最后更新:2008-07-21
- 1
- 2
- 3
前往页