artDialog 简单使用!

简介

artDialog是一个轻巧且高度兼容的javascript对话框组件,可让你的网页交互拥有桌面软件般的用户体验。

功能: 支持锁定屏幕(遮罩)、模拟alert和confirm、多窗口弹出、静止定位、支持Ese键关闭对话框、定时关闭、自定义位置、拖动、鼠标调节窗口大小、换肤……

优点

  1. 兼容主流浏览器: 支持IE6和IE6+, Firefox, chrome, Opera, Safari
  2. 自适应内容: 无需预设高宽, 对话框自适应消息内容的大小 (包括按钮),并且支持消息框大小拖动调节
  3. 智能消息对齐: 如果设置了对话框宽度,文本会自动居中或者居左对齐
  4. 容错: 如果定义的宽度高度小于内容大小不会出现错位,
  5. 智能定位: 使用自定义坐标的时候智能修正位置,确保其在可视范围 (适用于弹出菜单)
  6. 拖动流畅: 不会粘住鼠标也不会拖出浏览器视口导致无法控制
  7. 轻巧: js压缩后不到8KB (在js内嵌了核心兼容布局CSS的情况下)
  8. 制订皮肤: 九宫格布局, 钩子完善,制作皮肤相当简易, 内置IE6 png 32透明和定位解决方案。
  9. IE6无抖动静止定位: 在IE6下可实现与现代浏览器一样完美静止定位效果
  10. IE6遮盖下拉控件支持: 支持 IE6 下覆盖下拉控件 (注:半透明皮肤不支持)
接口

配置参数

  • content: {消息内容,支持HTML}
  • title: {标题.默认:'提示'}
  • lock: {是否锁定屏幕. 默认:false}
  • width: {宽度,支持em等单位. 默认:'auto'}
  • height: {高度,支持em等单位. 默认:'auto'}
  • url: {iframe地址,存在content参数时候,此参数无效}
  • x: {x坐标,可以使用关键字,如:left/right/center. 默认:'center'}
  • y: {y坐标,可以使用关键字,如:top/bottom/center. 默认:'center'(并非绝对垂直居中,而是使用的黄金比例)}
  • fixed: {是否启用静止定位. 默认:false}
  • time: {多少秒自动关闭}
  • style: {对话框风格扩展参数,写入自定义className,详情见皮肤css文件的定义,多个用空格隔开}
  • yesText: {确定按钮文本. 默认:'确定'}
  • noText: {取消按钮文本. 默认:'取消'}
  • yesClose: {点击确定按钮是否同时关闭对话框. 默认:true}
  • id: {给对话框定义id,对话框未关闭就不再会有同名对话框弹出. 例如定义id为'my2',则内容容器id为'my2Content'}
  • artDialog(
    
            {	
    
                content:'欢迎你来到对话框世界!',
    
                lock:true,
    
                style:'succeed noClose'
    
            },
    
            function(){
    
                alert('你点了确定');
    
            },
    
            function(){
    
                alert('你点了取消');
    
            }
    
    );
  • artDialog({content:'大多情况下只需要一个content参数就能解决问题'}).
  • http://www.mb5u.com/jscode/html/ajax/426_artDialog2_0_4/
21222
/*

演示脚本

*/





(function(){

		  

	//判断IE6

	var isIE6 = !+'\v1' && ([/MSIE (\d)\.0/i.exec(navigator.userAgent)][0][1] == 6);

	

	//document.getElementById简化函数

	var $ = function (id){

		return 'string' == typeof id ? document.getElementById(id) : id;

	};

	

	//页面就绪,允许你绑定一个在DOM文档载入完成后执行的函数

	var domReady = !+'\v1' ? function(f){(function(){

			try{

				document.documentElement.doScroll('left');

			} catch (error){

				setTimeout(arguments.callee, 0);

				return;

			};

			f();

		})();

	} : function(f){

		document.addEventListener('DOMContentLoaded', f, false);

	};

	

	//在页面就绪后绑定事件

	domReady(function(){

		//artDialog({content:'欢迎使用 "artDialog" 对话框组件!'});		

		

		

		//--------------------------ardDialog演示脚本开始------------------------------//

		$('btn1').onclick = function(){

			artDialog({title:'图片查看', content:'<img width="817" height="479" src="http://www.hunanyishi.cn/images/main.jpg" />', fixed:true});

			return false;

		};

		

		$('btn2').onclick = function(){

			artDialog({title:'google', url:'http://code.google.com/p/artdialog/', width:640, height:320});//url参数其实就是iframe

			return false;

		};

		

		$('btn3').onclick = function(){

			artDialog({title:'功夫兔', content:'<object width="420" height="363"><param name="movie" value="http://www.tudou.com/v/bXwe7XgTxuA"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><param name="wmode" value="opaque"></param><embed src="http://www.tudou.com/v/bXwe7XgTxuA" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" wmode="opaque" width="420" height="363"></embed></object>', fixed:true});

			return false;

		};

		

		$('btn4').onclick = function(){

			artDialog({content:'你人品稳定么?', fixed:true, yesText:'我很稳定', style:'confirm'}, function(){alert('你是好人');}, function(){alert('你是坏人');});//style参数可以填写多个,用空格隔开。具体有什么请看皮肤css文件

			return false;

		};

		

		$('btn5').onclick = function(){

			artDialog({content:'你是坏人', style:'alert', lock:true}, function(){});//lock参数就是锁屏,它会中断用户操作,用于显示非常重要的消息。慎用

			return false;

		};

		

		$('btn6').onclick = function(e){

			//获取对象的坐标,让对话框在按钮附近弹出

			var e = e || window.event,

			_x,

			_y;

			if(e.pageX || e.pageY){

				_x = e.pageX;

				_y = e.pageY;

			} else {

				_x = e.clientX + document.body.clientLeft;

				_y = e.clientY + Math.max(document.body.scrollTop, document.documentElement.scrollTop);

			};

			

			var _this = this;

			artDialog({id:'menu_4834783',content:'<input style="width:200px;" id="M_dfd" type="text" value="hello world!" />',x:_x, y:_y, style:'noTitle noBorder'}, function(){ _this.innerHTML = $('M_dfd').value; });//使用id参数,可以防止点击弹出多个对话框

			return false;

		};

		

		$('btn7').onclick = function(){

			artDialog({content:'您收到 <strong>2</strong> 条消息', x:'right', y:'bottom', time:'100', fixed:true});//x和y坐标可以使用关键字,当然也可以使用数字

			return false;

		};

		//--------------------------ardDialog演示脚本结束------------------------------//

		









		//皮肤切换(不支持IE6,因为png皮肤的缘故)

		if (!isIE6) {

			function mySkin(s){

				$('artDialogSkin').href = s;

			};

			$('skin_0').click();

			$('skin_0').onclick = function(){

				mySkin('skin/aero/aero.css');

			};

			$('skin_1').onclick = function(){

				mySkin('skin/chrome/chrome.css');

			};

			$('skin_2').onclick = function(){

				mySkin('skin/facebook/facebook.css');

			};

			$('skin_3').onclick = function(){

				mySkin('skin/mini/mini.css');

			};

			$('skin_4').onclick = function(){

				mySkin('skin/aero/aero.css');

				$('skin_0').click();

				artDialog({content:'自己动手,丰衣足食', lock:true});

			};

			$('showBg').onclick = function(){

				if (!$('test_3544')) {

					document.getElementsByTagName('body')[0].className = 'showBg';

					artDialog({id:'test_3544', content:'<div id="topMenu" style="background:#000; width:200px; height:2em;line-height:2em;text-align:center; filter:alpha(opacity=70); opacity:0.7;">[<a href="#" style="color:#FFF" onclick="showWin();return false">打开新对话框</a>]  [<a id="bgCloseBtn" href="#" style="color:#FFF" onclick="bgShow();return false">关闭</a>]</div>', x:'left', y:'top', style:'noSkin', fixed:true});

				} else {

					bgShow();

				};

				return false;

			};

		};

		

		//运行代码[不支持Chrome]

		$('runCodeBtn').onclick = function(){

			var fn = $('runCode').value;

			$('runCodeDiv').innerHTML = '<iframe style="display:none" id="runCodeIframe"></iframe>';

			var fw = $('runCodeIframe').contentWindow;

			var f = fw.document;

			f.contentEditable = true; 

			//f.open();

			f.writeln('<!DOCTYPE><html><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><script type="text/javascript">try{window.parent.'+fn+'}catch(e){alert(e.description);};</script><body></body></html>');

			//f.close();

			return false;

		};

		

		

		var mailName = 'admin' + '@' + 'plane' + 'art' + '.cn';

		$('myMail').innerHTML = mailName;

	});



})();



//显示一个新对话框

function showWin(){

			artDialog({content:'欢迎使用 "artDialog" 对话框组件!', fixed:true, lock:false,style:'succeed'}, function(){artDialog({title:' ', content:'谢谢观赏', lock:true, time:2})});

};



//显示背景

function bgShow(){

	var body = document.getElementsByTagName('body')[0];

	if(body.className != 'showBg') {

		body.className = 'showBg';

		document.getElementById('bgCloseBtn').innerHTML = '关闭背景';

	} else {

		body.className = '';

		document.getElementById('bgCloseBtn').innerHTML = '打开背景';

	};

};

  

你可能感兴趣的:(artdialog)