以下是 对话框-jbox特效代码 的示例演示效果:
部分效果截图:
HTML代码(jbox-demo.html):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="utf-8" />
<meta name="Robots" content="all" />
<meta name="Author" content="KudyChen" />
<meta name="Copyright" content="KudyStudio.Com" />
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<title>JBox Demo</title>
<script type="text/javascript" src="jBox/jquery-1.4.2.min.js"></script>
<!--jbox-->
<link id="skin" rel="stylesheet" href="jBox/Skins/Default/jbox.css" />
<script type="text/javascript" src="jBox/jquery.jBox-2.3.min.js"></script>
<script type="text/javascript" src="jBox/i18n/jquery.jBox-zh-CN.js"></script>
<!--demo测试代码-->
<script type="text/javascript" src="jbox-demo-depends/demo.js"></script>
<!--demo代码高亮-->
<script type="text/javascript" src="jbox-demo-depends/highlight/highlight.pack.js"></script>
<script type="text/javascript" src="jbox-demo-depends/highlight/languages/javascript.js"></script>
<link rel="stylesheet" type="text/css" href="jbox-demo-depends/highlight/styles/magula.css" />
<script type="text/javascript">
hljs.initHighlightingOnLoad();
</script>
<style type="text/css">
/*页面样式*/
body {margin:0;padding:0;font:12px Verdana, Geneva, sans-serif;background:#66C6F6;}
ul{ margin:0; padding:0; list-style:none;}
a{color:#ff6600; text-decoration:none;}
a:hover{color:#ff9900; text-decoration:underline;}
.grid{ width:auto;width:920px !important;max-width:920px;min-width:800px; background:#FFF; margin:10px auto; border:10px solid #60B7DE;}
.logo{ width:460px; font:bold 40px "Comic Sans MS", cursive; margin:10px 5px 5px 25px;}
.logo span{ font-size:13px; color:#999; margin:0 5px;}
.demo{ padding:5px;}
fieldset{ margin:20px; padding:16px;}
.content{ margin:10px 0 0 0;}
.content li { margin:5px;}
.btn{ border:0; background:#4D77A7; color:#FFF; font-size:12px; padding:6px 10px; margin:5px 0;}
.copy{ height:30px; background:#E6EFF8; text-align:center; line-height:30px;}
.t{padding:20px;}
.update{padding:0 20px 20px 20px;}
.t li,.update li{ margin:10px 0; line-height:20px;}
.update{color:#069;padding-bottom:0;}
.sel-skin{position:absolute;top:300px;right:10px;width:120px; height:80px; padding:10px; background-color:#fff;color:#fff;}
/*jox应用测试样式*/
div.msg-div{ padding: 10px; }
div.msg-div p{ padding: 0px; margin:5px 0 0 0; }
div.msg-div .field{ padding: 0px; }
div.msg-div .field textarea{ width: 90%; height: 50px; resize:none; font-size:12px; }
.errorBlock{ background-color: #FFC6A5; border: solid 1px #ff0000; color: #ff0000; margin: 10px 10px 0 10px; padding:7px; font-weight: bold; }
</style>
</head>
<body>
<div class="sel-skin">
<ul>
<li>分组:<a href="jbox-demo.html" style="color:#fff">Skin</a> | <a href="jbox-demo2.html" style="color:#fff">Skin2</a>
<br /><br />皮肤:<select id="select-skin" name="select-skin" style="font-size:12px" onchange="changeSkin(this.value);">
<option value="Default|#A5C11B" style="background-color:#A5C11B;color:White;">默认</option>
<option value="Blue|#5F9AD4" style="background-color:#5F9AD4;color:White;">蓝色</option>
<option value="ShareBlue|#376EA5" style="background-color:#376EA5;color:White;">深蓝色</option>
<option value="GreyBlue|#546C83" style="background-color:#546C83;color:White;">灰蓝色</option>
<option value="Green|#818E49" style="background-color:#818E49;color:White;">绿色</option>
<option value="ShareGreen|#4D5A14" style="background-color:#4D5A14;color:White;">深绿色</option>
<option value="Red|#B8311F" style="background-color:#B8311F;color:White;">红色</option>
<option value="ShareRed|#6D0D00" style="background-color:#6D0D00;color:White;">深红色</option>
<option value="Purple|#824E85" style="background-color:#824E85;color:White;">紫色</option>
<option value="SharePurple|#511B55" style="background-color:#511B55;color:White;">深紫色</option>
<option value="Brown|#9B6E42" style="background-color:#9B6E42;color:White;">棕色</option>
<option value="ShareBrown|#60350B" style="background-color:#60350B;color:White;">深棕色</option>
<option value="Gray|#4C4C4C" style="background-color:#4C4C4C;color:White;">灰色</option>
<option value="GrayCool|#4C4C4C" style="background-color:#4C4C4C;color:White;">灰色cool</option>
</select><br /><br />下载:<a href="http://kudystudio.com/jbox/jbox-v2.3.rar" style="color:#fff" target="_blank"><img src="jbox-demo-depends/down.png" width="16" style="width:16px;border:0; vertical-align:middle;" />jBox 2.3</a>
</li>
</ul>
</div>
<div class="grid">
<div>
<div class="logo">jBox<span>v2.3 beta</span></div>
</div>
<div style="padding: 20px 20px; clear:both;"><div style="width:877px;height:124px;background-image:url(jbox-demo-depends/jbox.png);"></div></div>
<div style="padding: 0px 20px 20px 20px; clear:both;"><div style="width:877px;height:124px;background-image:url(jbox-demo-depends/jbox2.png);"></div></div>
<div style="padding: 0px 20px 20px 20px; clear:both; font-weight:bold;color:#069;">
[<a href="http://kudystudio.com/jbox/jbox-v2.3.rar" target="_blank">点击下载</a>]
<br /><br />
技术交流QQ群:172543951
</div>
<div class="update">
<ul>
<li><strong style="color:#F00">[2011-11-11] jBox v2.3 正式版</strong></li>
<li style="text-indent:2em"> - [调整&修复] IE6下有iframe或页面有active、applet控件的情况下自动选择用iframe来遮罩。 </li>
<li style="text-indent:2em"> - [修复] IE6下拖动窗口到右边时边框不可见的样式错误(依然还有20px,但影响不大)。</li>
<li style="text-indent:2em"> - [修复] IE6下prompt相关方法与messager方法的图标最小高度不正确的样式修正。</li>
<li style="text-indent:2em"> - [修复] IE6下messager方法的窗口在滚动条被拖动的时候位置不正确的bug。</li>
<li style="text-indent:2em"> - [修复] 修复浏览器改变大小时遮罩层不完全的bug。</li>
</ul>
</div>
<div class="update">
<ul>
<li><strong style="color:#F00">[2011-11-08] jBox v2.3 beta 版本更新</strong></li>
<li style="text-indent:2em"> - [新增] tip方法增加了 opacity 选项,它决定是否显示隔离层。</li>
<li style="text-indent:2em"> - [新增] 增加了 showScrolling 选项,在显示jBox窗口时可以隐藏浏览器的滚动条。</li>
<li style="text-indent:2em"> - [新增] 多个窗口共存时,点击某个窗口标题时,窗口自动处于最顶层。</li>
<li style="text-indent:2em"> - [调整] id 选项默认改为null,当为null时会自动生成随机id,一个id只会显示一个jBox。</li>
<li style="text-indent:2em"> - [调整] loaded 选项增加了个参数h,参数h表示窗口内容的jQuery对象,方便用户在窗口加载后对内容进行初始化处理。</li>
<li style="text-indent:2em"> - [调整] 把全局设置放到独立的js文件,统一放在目录 i18n,目前只有jquery.jBox-zh-CN.js。</li>
<li style="text-indent:2em"> - [调整] 按空格键可直接执行默认按钮提交的事件(为保留此功能,按钮为焦点时不是很好看,但用户体验应该优先考虑)。</li>
<li style="text-indent:2em"> - [修复] 修复在IE下多窗口状态切换时显示不了的Bug。</li>
</ul>
</div>
<div class="update">
<ul>
<li><strong style="color:#F00">[2011-08-30] jBox v2.2 beta 版本更新</strong></li>
<li style="text-indent:2em"> - [新增] 新增另一套常用皮肤Skin2。</li>
<li style="text-indent:2em"> - [调整] 此版本已把全局设置 showIcon改为true,同时还可以设置自定义标题图标。详情请看最下面的配置说明。</li>
<li style="text-indent:2em"> - [修复] 修复浏览器改变大小时窗口可能消失的bug。</li>
</ul>
</div>
<div class="update">
<ul>
<li><strong style="color:#F00">[2011-08-28] jBox v2.1 beta 版本更新</strong></li>
<li style="text-indent:2em"> - [新增] 美化界面皮肤,新增常用皮肤。每个皮肤下都有三个loading图标和两款按钮可以选择,默认使用第一个。</li>
<li style="text-indent:2em"> - [新增] 加强 tip 方法的多个tip切换特效,还可以使用 loading 图标显示ajax交互提示。</li>
<li style="text-indent:2em"> - [调整] 按钮由 a 标签改回 button 标签,使其可以按回车或空格键提交默认按钮。</li>
<li style="text-indent:2em"> - [调整] 此版本已把全局设置 showIcon、dragClone改为false,如果想启用请设置为true。另外,增加了一个 ajaxData 设置,方便提交ajax数据。详情请看最下面的配置说明。</li>
</ul>
</div>
<div class="update">
<ul>
<li><strong style="color:#F00">[2011-07-24] jBox v2.0 beta 版本更新</strong></li>
<li style="text-indent:2em"> - [新增] 增加界面皮肤,可以制作自己喜欢的皮肤。</li>
<li style="text-indent:2em"> - [新增] 增加窗口可以拖动的功能。</li>
<li style="text-indent:2em"> - [新增] 增加 tip、messager 方法以方便用户交互提示。</li>
<li style="text-indent:2em"> - [调整] 扩大选项可设置范围,更具个性化。</li>
<li style="text-indent:2em"> - [调整] 优化与调整整体界面样式,扩大样式可设置范围。</li>
<li style="text-indent:2em"> - [调整] 优化与调整 open、prompt、alert、info、warning、success、error、confirm 方法以方便界面操作。</li>
<li style="text-indent:2em"> - [修复] 修复在各个主流浏览器下的多个小BUG。</li>
</ul>
</div>
<div class="update">
<ul>
<li><strong>[2009-11-30] jBox v1.0 初版本</strong></li>
</ul>
</div>
<div class="t">
<ul>
<li><strong>插件说明</strong></li>
<li style="text-indent:2em"> - jBox 是一款基于 jQuery 的多功能对话框插件,能够实现网站的整体风格效果,给用户一个新的视觉享受。</li>
<li><strong>运行环境</strong></li>
<li style="text-indent:2em"> - 兼容 IE6+、Firefox、Chrome、Safari、Opera 等主流浏览器。<font color="#ff0000">备注:IE不支持边框的圆角样式,不推荐大家使用蛋痛的IE浏览器。</font></li>
<li><strong>使用授权</strong></li>
<li style="text-indent:2em"> - jBox 永久免费使用,但是必须保留相关的版权信息。如果有好的建议,请Email: <a href="mailto:kudychen@gmail.com">kudychen@gmail.com</a>,jBox的完善需要大家的好建议。</li>
</ul>
</div>
<div style="padding: 0 20px">
<ul>
<li><strong>使用方法:</strong></li>
<li>
<pre>
<code class="javascript">
<script type="text/javascript" src="jBox/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="jBox/jquery.jBox-2.3.min.js"></script>
<script type="text/javascript" src="jBox/i18n/jquery.jBox-zh-CN.js"></script>
<link type="text/css" rel="stylesheet" href="jBox/Skins/皮肤文件夹/jbox.css"/>
// 或
<link type="text/css" rel="stylesheet" href="jBox/Skins2/皮肤文件夹/jbox.css"/>
</code>
</pre>
</li>
</ul>
</div>
<fieldset>
<input class="btn" type="button" onclick="show_jbox_set_defaults();" value="设置全局选项" />
<input class="btn" type="button" onclick="show_jbox_set_border(5);" value="边框设置为 5" />
<input class="btn" type="button" onclick="show_jbox_set_border(0);" value="边框设置为 0" />
<br />请根据自己的喜好修改全局设置以减少方法时传递的参数。<font color="red">另外,jBox的皮肤是很容易制作的,最简单的就是只修改CSS样式里的颜色,在会PS的情况下更是可以制作多样化的皮肤。</font>
</fieldset>
<fieldset><legend>$.jBox()</legend>
<div class="content">
<ul>
<li>函数原型:</li>
<li style="text-indent:2em"><strong>$.jBox(content, options);</strong></li>
<li style="color:#999"> └ 或者 jBox(content, options);</li>
<li>参数说明:</li>
<li style="text-indent:2em"> - <strong>content</strong> (string,json)</li>
<li style="color:#999999;"> └ 可以是string或json。当是string时,需要加上前缀标识(html:、id:、get:、post:、iframe:),如果没有加标识,系统会自动加上html:,具体请看应用例子。当是json时,表示一个或多个状态,每个状态的默认值为 <a href="javascript:viewConfig('stateDefaults');" title="点击查看">$.jBox.stateDefaults</a>。
</li>
<li style="text-indent:2em"> - <strong>options</strong> [可选] (json)</li>
<li style="color:#999999;"> └ 其它参数选项,默认值为 <a href="javascript:viewConfig('defaults');" title="点击查看">$.jBox.defaults</a>。</li>
<li style="color:#F00">
<br /><strong>备注:如果想手动关闭jBox(不包括下面的tip与messager,它们另有方法),请调用 $.jBox.close(token) 方法。</strong>
</li>
</ul>
</div>
<br />
示例(一):
<pre>
<code class="javascript">
// 此例省略了前缀html:,前缀标识是不区分大小写的,也可以是HTML:
var info = 'jQuery jBox<br /><br />版本:v2.0<br />日期:2011-7-24<br />';
info += '官网:<a target="_blank" href="http://kudystudio.com/jbox">http://kudystudio.com/jbox</a>';
$.jBox.info(info);
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_1_1();" value="运 行" /></div>
示例(二):
<pre>
<code class="javascript">
// 显示id为id-html的div内部html,同时设置了bottomText
$.jBox('id:id-html', { bottomText: '这是底部文字' });
</code>
</pre>
<div id="id-html" style="display:none;">
<div style='padding:10px;'>这里是id为id-html的div内部html,同时设置了bottomText</div>
</div>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_1_2();" value="运 行" /></div>
示例(三):
<pre>
<code class="javascript">
// ajax get 页面ajax.html的内容并显示,例如要提交id=1,则地址应该为 ajax.html?id=1,post:前缀的使用与get:的一样
$.jBox("get:ajax.html");
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_1_3();" value="运 行" /></div>
示例(四):
<pre>
<code class="javascript">
// 用iframe显示http://www.baidu.com的内容,并设置了标题、宽与高、按钮
$.jBox("iframe:http://www.baidu.com", {
title: "百度一下",
width: 800,
height: 350,
buttons: { '关闭': true }
});
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_1_4();" value="运 行" /></div>
示例(五):
<pre>
<code class="javascript">
var content = {
state1: {
content: '状态一',
buttons: { '下一步': 1, '取消': 0 },
buttonsFocus: 0,
submit: function (v, h, f) {
if (v == 0) {
return true; // close the window
}
else {
$.jBox.nextState(); //go forward
// 或 $.jBox.goToState('state2')
}
return false;
}
},
state2: {
content: '状态二,请关闭窗口哇:)',
buttons: { '上一步': 1, '取消': 0 },
buttonsFocus: 0,
submit: function (v, h, f) {
if (v == 0) {
return true; // close the window
} else {
$.jBox.prevState() //go back
// 或 $.jBox.goToState('state1');
}
return false;
}
}
};
$.jBox(content);
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_1_5();" value="运 行" /></div>
示例(六):
<pre>
<code class="javascript">
var html = "<div style='padding:10px;'>输入姓名:<input type='text' id='yourname' name='yourname' /></div>";
var submit = function (v, h, f) {
if (f.yourname == '') {
$.jBox.tip("请输入您的姓名。", 'error', { focusId: "yourname" }); // 关闭设置 yourname 为焦点
return false;
}
$.jBox.tip("你叫:" + f.yourname);
//$.jBox.tip("你叫:" + h.find("#yourname").val());
//$.jBox.tip("你叫:" + h.find(":input[name='yourname']").val());
return true;
};
$.jBox(html, { title: "你叫什么名字?", submit: submit });
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_1_6();" value="运 行" /></div>
</fieldset>
<fieldset><legend>$.jBox.open()</legend>
<div class="content">
<ul>
<li>函数原型:</li>
<li style="text-indent:2em"><strong>$.jBox.open(content, title, width, height, options);</strong></li>
<li style="color:#999"> └ 或者 jBox.open(content, title, width, height, options);</li>
<li>参数说明:</li>
<li style="text-indent:2em"> - <strong>content</strong> (string,json)</li>
<li style="color:#999999;"> └ 可以是string或json。当是string时,需要加上前缀标识(html:、id:、get:、post:、iframe:),如果没有加标识,系统会自动加上html:,具体请看应用例子。当是json时,表示一个或多个状态,每个状态的默认值为 <a href="javascript:viewConfig('stateDefaults');" title="点击查看">$.jBox.stateDefaults</a>。</li>
<li style="text-indent:2em"> - <strong>title</strong> [可选] (string)</li>
<li style="color:#999999;"> └ 窗口标题,值为null时为不显示标题,默认值为 <a href="javascript:viewConfig('defaults');" title="点击查看">$.jBox.defaults.title</a>。</li>
<li style="text-indent:2em"> - <strong>width</strong> [可选] (string,number)</li>
<li style="color:#999999;"> └ 窗口宽度,值为'auto'或具体像素值(例如350),默认值为 <a href="javascript:viewConfig('defaults');" title="点击查看">$.jBox.defaults.width</a>。</li>
<li style="text-indent:2em"> - <strong>height</strong> [可选] (string,number)</li>
<li style="color:#999999;"> └ 窗口高度,值为'auto'或具体像素值(例如100),默认值为 <a href="javascript:viewConfig('defaults');" title="点击查看">$.jBox.defaults.height</a>。</li>
<li style="text-indent:2em"> - <strong>options</strong> [可选] (json)</li>
<li style="color:#999999;"> └ 其它参数选项,默认值为 <a href="javascript:viewConfig('defaults');" title="点击查看">$.jBox.defaults</a>。</li>
<li style="color:#F00">
<br /><strong>备注:$.jBox.open() 只是 $.jBox() 的一个扩展,方便 title、width、height 参数的传递。</strong>
</li>
</ul>
</div>
<br />
示例(一):
<pre>
<code class="javascript">
$.jBox.open("iframe:http://www.baidu.com", "百度一下", 800, 350, { buttons: { '关闭': true} });
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_2_1();" value="运 行" /></div>
示例(二): <font color="#ff0000;">(content为Json对象,比较复杂一点的例子)</font>
<pre>
<code class="javascript">
var html1 = '<div class="msg-div">' +
'<p>购买数量:</p><div class="field"><input type="text" id="amount" name="amount" value="1" /></div>' +
'<p>收货地址:</p><div class="field"><textarea id="address" name="address"></textarea></div>' +
'<div class="errorBlock" style="display: none;"></div>' +
'</div>';
var html2 = '<div class="msg-div">' +
'<p>给卖家留言:</p><div class="field"><textarea id="message" name="message"></textarea></div>' +
'</div>';
var data = {};
var states = {};
states.state1 = {
content: html1,
buttons: { '下一步': 1, '取消': 0 },
submit: function (v, h, f) {
if (v == 0) {
return true; // close the window
}
else {
h.find('.errorBlock').hide('fast', function () { $(this).remove(); });
data.amount = f.amount; //或 h.find('#amount').val();
if (data.amount == '' || parseInt(data.amount) < 1) {
$('<div class="errorBlock" style="display: none;">请输入购买数量!</div>').prependTo(h).show('fast');
return false;
}
data.address = f.address;
if (data.address == '') {
$('<div class="errorBlock" style="display: none;">请输入收货地址!</div>').prependTo(h).show('fast');
return false;
}
$.jBox.nextState(); //go forward
// 或 $.jBox.goToState('state2')
}
return false;
}
};
states.state2 = {
content: html2,
buttons: { '上一步': -1, '提交': 1, '取消': 0 },
buttonsFocus: 1, // focus on the second button
submit: function (v, o, f) {
if (v == 0) {
return true; // close the window
} else if (v == -1) {
$.jBox.prevState() //go back
// 或 $.jBox.goToState('state1');
}
else {
data.message = f.message;
// do ajax request here
$.jBox.nextState('<div class="msg-div">正在提交...</div>');
// 或 $.jBox.goToState('state3', '<div class="msg-div">正在提交...</div>')
// asume that the ajax is done, than show the result
var msg = [];
msg.push('<div class="msg-div">');
msg.push('<p>下面是提交的数据</p>');
for (var p in data) {
msg.push('<p>' + p + ':' + data[p] + '</p>');
}
msg.push('</div>');
window.setTimeout(function () { $.jBox.nextState(msg.join('')); }, 2000);
}
return false;
}
};
states.state3 = {
content: '',
buttons: {} // no buttons
};
states.state4 = {
content: '',
buttons: { '确定': 0 }
};
$.jBox.open(states, '提交订单', 450, 'auto');
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_2_2();" value="运 行" /></div>
</fieldset>
<fieldset><legend>$.jBox.prompt()</legend>
<div class="content">
<ul>
<li>函数原型:</li>
<li style="text-indent:2em"><strong>$.jBox.prompt(content, title, icon, options);</strong></li>
<li style="color:#999"> └ 或者 jBox.prompt(content, title, icon, options);</li>
<li>参数说明:</li>
<li style="text-indent:2em"> - <strong>content</strong> (string)</li>
<li style="color:#999999;"> └ 只能是string,不支持前缀标识,默认值为''。</li>
<li style="text-indent:2em"> - <strong>title</strong> [可选] (string)</li>
<li style="color:#999999;"> └ 窗口标题,值为null时为不显示标题,默认值为 <a href="javascript:viewConfig('defaults');" title="点击查看">$.jBox.defaults.title</a>。</li>
<li style="text-indent:2em"> - <strong>icon</strong> [可选] (string)</li>
<li style="color:#999999;"> └ <font color="red">内容图标</font>,值为'none'时为不显示图标,可选值有'none'、'info'、'question'、'success'、'warning'、'error',默认值为'none'。</li>
<li style="text-indent:2em"> - <strong>options</strong> [可选] (json)</li>
<li style="color:#999999;"> └ 其它参数选项,默认值为 <a href="javascript:viewConfig('defaults');" title="点击查看">$.jBox.defaults</a>。</li>
<li style="color:#F00">
<br /><strong>备注:以下几个方法由 $.jBox.prompt() 扩展而来,参数类似,请看下面的例子。</strong>
</li>
<li style="text-indent:2em"><strong>$.jBox.alert(content, title, options);</strong></li>
<li style="color:#999"> └ 或者 jBox.alert(content, title, options);</li>
<li style="text-indent:2em"><strong>$.jBox.info(content, title, options);</strong></li>
<li style="color:#999"> └ 或者 jBox.info(content, title, options);</li>
<li style="text-indent:2em"><strong>$.jBox.success(content, title, options);</strong></li>
<li style="color:#999"> └ 或者 jBox.success(content, title, options);</li>
<li style="text-indent:2em"><strong>$.jBox.error(content, title, options);</strong></li>
<li style="color:#999"> └ 或者 jBox.error(content, title, options);</li>
<li style="text-indent:2em"><strong>$.jBox.confirm(content, title, submit, options);</strong></li>
<li style="color:#999"> └ 或者 jBox.confirm(content, title, submit, options);</li>
<li style="text-indent:2em"><strong>$.jBox.warning(content, title, submit, options);</strong></li>
<li style="color:#999"> └ 或者 jBox.warning(content, title, submit, options);</li>
<li style="color:#F00;"> └ 上面方法中默认按钮的文字设置在 <a href="javascript:javascript:viewConfig('languageDefaults');" title="点击查看">$.jBox.languageDefaults</a></li>
</ul>
</div>
<br />
示例(一):
<pre>
<code class="javascript">
//加了个其它参数closed
$.jBox.prompt('Hello jBox', 'jBox', 'info', { closed: function () { alert('prompt is closed.'); } });
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_3_1();" value="运 行" /></div>
示例(二):
<pre>
<code class="javascript">
$.jBox.alert('Hello jBox', 'jBox');
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_3_2();" value="运 行" /></div>
示例(三):
<pre>
<code class="javascript">
$.jBox.info('Hello jBox', 'jBox');
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_3_3();" value="运 行" /></div>
示例(四):
<pre>
<code class="javascript">
$.jBox.success('Hello jBox', 'jBox');
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_3_4();" value="运 行" /></div>
示例(五):
<pre>
<code class="javascript">
$.jBox.error('Hello jBox', 'jBox');
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_3_5();" value="运 行" /></div>
示例(六):
<pre>
<code class="javascript">
var submit = function (v, h, f) {
if (v == 'ok')
jBox.tip(v, 'info');
else if (v == 'cancel')
jBox.tip(v, 'info');
return true; //close
};
$.jBox.confirm("确定吗?", "提示", submit);
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_3_6();" value="运 行" /></div>
示例(六02):
<pre>
<code class="javascript">
var submit = function (v, h, f) {
if (v == true)
jBox.tip("恩", 'info');
else
jBox.tip("好吖", 'info');
return true;
};
// 自定义按钮
$.jBox.confirm("天使,做我女朋友吧?", "表白提示", submit, { buttons: { '恩': true, '好吖': false} });
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_3_6_2();" value="运 行" /></div>
示例(七):
<pre>
<code class="javascript">
var submit = function (v, h, f) {
if (v == 'yes') {
$.jBox.tip('已保存。', 'success');
}
if (v == 'no') {
$.jBox.tip('没保存。');
}
if (v == 'cancel') {
$.jBox.tip('已取消。');
}
return true;
};
// 可根据需求仿上例子定义按钮
$.jBox.warning("内容已修改,是否保存?", "提示", submit);
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_3_7();" value="运 行" /></div>
</fieldset>
<fieldset><legend>$.jBox.tip()</legend>
<div class="content">
<ul>
<li>函数原型:</li>
<li style="text-indent:2em"><strong>$.jBox.tip(content, icon, options);</strong></li>
<li style="color:#999"> └ 或者 jBox.tip(content, icon, options);</li>
<li>参数说明:</li>
<li style="text-indent:2em"> - <strong>content</strong> (string)</li>
<li style="color:#999999;"> └ 只能是string,不支持前缀标识,默认值为''。</li>
<li style="text-indent:2em"> - <strong>icon</strong> [可选] (string)</li>
<li style="color:#999999;"> └ <font color="red">内容图标</font>,可选值有'info'、'success'、'warning'、'error'、'loading',默认值为'info',当为'loading'时,timeout值会被设置为0,表示不会自动关闭。</li>
<li style="text-indent:2em"> - <strong>options</strong> [可选] (json)</li>
<li style="color:#999999;"> └ 其它参数选项,默认值为 <a href="javascript:viewConfig('tipDefaults');" title="点击查看">$.jBox.tipDefaults</a>。</li>
<li style="color:#F00">
<br /><strong>备注:如果想手动关闭tip,请调用 $.jBox.closeTip() 方法。</strong>
</li>
</ul>
</div>
<br />
示例(一):
<pre>
<code class="javascript">
$.jBox.tip('Hello jBox');
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_4_1();" value="运 行" /></div>
示例(二):
<pre>
<code class="javascript">
//加了个其它参数focusId
$.jBox.tip('关闭后设置输入框为焦点', 'info', { focusId: 'tip-input' });
</code>
</pre>
<div style="text-align:right">输入框:<input type="text" id="tip-input" /> <input class="btn" type="button" onclick="demo_4_2();" value="运 行" /></div>
示例(三):
<pre>
<code class="javascript">
//加了个其它参数closed
$.jBox.tip('关闭后设置输入框为已选择', 'error', { closed: function () { $('#tip-input2').select(); } });
</code>
</pre>
<div style="text-align:right">输入框:<input type="text" id="tip-input2" value="内容" /> <input class="btn" type="button" onclick="demo_4_3();" value="运 行" /></div>
示例(四):
<pre>
<code class="javascript">
$.jBox.tip("正在XX,你懂的...", 'loading');
// 模拟2秒后完成操作
window.setTimeout(function () { $.jBox.tip('XX已完成。', 'success'); }, 2000);
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_4_4();" value="运 行" /></div>
示例(五):
<pre>
<code class="javascript">
var submit = function (v, h, f) {
if (v == 'ok') {
$.jBox.tip("正在删除数据...", 'loading');
// 模拟2秒后完成操作
window.setTimeout(function () { $.jBox.tip('删除成功。', 'success'); }, 2000);
}
else if (v == 'cancel') {
// 取消
}
return true; //close
};
$.jBox.confirm("确定要删除数据吗?", "提示", submit);
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_4_5();" value="运 行" /></div>
</fieldset>
<fieldset><legend>$.jBox.messager()</legend>
<div class="content">
<ul>
<li>函数原型:</li>
<li style="text-indent:2em"><strong>$.jBox.messager(content, title, timeout, options);</strong></li>
<li style="color:#999"> └ 或者 jBox.messager(content, title, timeout, options);</li>
<li>参数说明:</li>
<li style="text-indent:2em"> - <strong>content</strong> (string)</li>
<li style="color:#999999;"> └ 只能是string,不支持前缀标识,默认值为''。</li>
<li style="text-indent:2em"> - <strong>title</strong> [可选] (string)</li>
<li style="color:#999999;"> └ 窗口标题,值为null时为不显示标题,默认值为 <a href="javascript:viewConfig('messagerDefaults');" title="点击查看">$.jBox.messagerDefaults.title</a>。</li>
<li style="text-indent:2em"> - <strong>timeout</strong> [可选] (number)</li>
<li style="color:#999999;"> └ 显示多少毫秒后自动关闭,如果为0则不自动关闭,默认值为 <a href="javascript:viewConfig('messagerDefaults');" title="点击查看">$.jBox.messagerDefaults.timeout</a>。</li>
<li style="text-indent:2em"> - <strong>options</strong> [可选] (json)</li>
<li style="color:#999999;"> └ 其它参数选项,默认值为 <a href="javascript:viewConfig('messagerDefaults');" title="点击查看">$.jBox.messagerDefaults</a>。</li>
<li style="color:#F00">
<br /><strong>备注:如果想手动关闭messager,请调用 $.jBox.closeMessager() 方法。</strong>
</li>
</ul>
</div>
<br />
示例(一):
<pre>
<code class="javascript">
$.jBox.messager('Hello jBox', 'jBox');
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_5_1();" value="运 行" /></div>
示例(二):
<pre>
<code class="javascript">
$.jBox.messager("Hello jBox 2", "my title", null, { width: 350, showType: 'fade' });
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_5_2();" value="运 行" /></div>
示例(三):
<pre>
<code class="javascript">
$.jBox.messager("Hello jBox 3", "my title", 3000, {
width: 350,
icon: 'info',
showType: 'show',
buttons: { '去看看': true },
submit: function (v, h, f) {
$.jBox.info('看个蛋蛋?');
return true;
}
});
</code>
</pre>
<div style="text-align:right"><input class="btn" type="button" onclick="demo_5_3();" value="运 行" /></div>
</fieldset>
<fieldset><legend>jBox 其它成员</legend>
<div class="content">
<ul>
<li>全局设置:</li>
<li style="text-indent:2em"><strong><a href="javascript:viewConfig('defaults');" title="点击查看">$.jBox.defaults</a></strong></li>
<li style="text-indent:2em"><strong><a href="javascript:viewConfig('stateDefaults');" title="点击查看">$.jBox.stateDefaults</a></strong></li>
<li style="text-indent:2em"><strong><a href="javascript:viewConfig('tipDefaults');" title="点击查看">$.jBox.tipDefaults</a></strong></li>
<li style="text-indent:2em"><strong><a href="javascript:viewConfig('messagerDefaults');" title="点击查看">$.jBox.messagerDefaults</a></strong></li>
<li style="text-indent:2em"><strong><a href="javascript:viewConfig('languageDefaults');" title="点击查看">$.jBox.languageDefaults</a></strong></li>
<li>其它函数:</li>
<li style="text-indent:2em"> - <strong>$.jBox.setDefaults(configs);</strong></li>
<li style="color:#999999;"> └ 设置全局设置,请参考 demo.js 里的使用。</li>
<li style="text-indent:2em"> - <strong>$.jBox.getBox();</strong></li>
<li style="color:#999999;"> └ 获取最前面打开的窗口jQuery对象。</li>
<li style="text-indent:2em"> - <strong>$.jBox.getIframe(jBoxId);</strong></li>
<li style="color:#999999;"> └ 获取最前面打开的或指定ID的窗口里的 iframe jQuery对象。(方便与iframe的交互)</li>
<li style="text-indent:2em"> - <strong>$.jBox.getContent();</strong></li>
<li style="color:#999999;"> └ 获取最前面打开的窗口的内容html。</li>
<li style="text-indent:2em"> - <strong>$.jBox.setContent(content);</strong></li>
<li style="color:#999999;"> └ 设置最前面打开的窗口的内容html。</li>
<li style="text-indent:2em"> - <strong>$.jBox.getState(stateNmae);</strong></li>
<li style="color:#999999;"> └ 获取最前面打开的窗口可见状态内容。(content为多状态下)</li>
<li style="text-indent:2em"> - <strong>$.jBox.getStateName();</strong></li>
<li style="color:#999999;"> └ 获取最前面打开的窗口可见状态的名称。(content为多状态下)</li>
<li style="text-indent:2em"> - <strong>$.jBox.goToState(stateName, stateContent);</strong></li>
<li style="color:#999999;"> └ 显示最前面打开的窗口的指定状态,并可设置状态内容。(content为多状态下)</li>
<li style="text-indent:2em"> - <strong>$.jBox.nextState(stateContent);</strong></li>
<li style="color:#999999;"> └ 显示最前面打开的窗口的下一个状态,并可设置状态内容。(content为多状态下)</li>
<li style="text-indent:2em"> - <strong>$.jBox.prevState(stateContent);</strong></li>
<li style="color:#999999;"> └ 显示最前面打开的窗口的上一个状态,并可设置状态内容。(content为多状态下)</li>
<li style="text-indent:2em"> - <strong>$.jBox.close(token);</strong></li>
<li style="color:#999999;"> └ 关闭最前面打开的窗口,token可以是指定jBox的ID或布尔值,如果是true显示关闭所有已打开的窗口。</li>
<li style="text-indent:2em"> - <strong>$.jBox.closeTip();</strong></li>
<li style="color:#999999;"> └ 关闭提示(由 $.jBox.tip() 打开的)。</li>
<li style="text-indent:2em"> - <strong>$.jBox.closeMessager();</strong></li>
<li style="color:#999999;"> └ 关闭提示(由 $.jBox.messager() 打开的)。</li>
</ul>
</div>
<br />
示例(iframe):
<pre>
<code class="javascript">
// 调父窗口请用 parent 或 top,如果是多层iframe,需要调用多个parent
var html = "<div style='padding:10px;'>输入点什么:<input type='text' id='some' name='some' /></div>";
var submit = function (v, h, f) {
if (f.some == '') {
// f.some 或 h.find('#some').val() 等于 top.$('#some').val()
top.$.jBox.tip("请输入点什么。", 'error', { focusId: "some" }); // 关闭设置 some 为焦点
return false;
}
top.$.jBox.info("你输入了:" + f.some);
return true;
};
top.$.jBox(html, { title: "输入", submit: submit });
</code>
</pre>
<div style="text-align:right">
<iframe src="iframe.html" width="100%" height="50"></iframe>
</div>
</fieldset>
<!-- 全局配置说明 -->
<div id="defaults" style="display:none;">
<pre class="config">
<code class="javascript">
$.jBox.defaults = {
id: null, /* 在页面中的唯一id,如果为null则自动生成随机id,一个id只会显示一个jBox */
top: '15%', /* 窗口离顶部的距离,可以是百分比或像素(如 '100px') */
border: 5, /* 窗口的外边框像素大小,必须是0以上的整数 */
opacity: 0.1, /* 窗口隔离层的透明度,如果设置为0,则不显示隔离层 */
timeout: 0, /* 窗口显示多少毫秒后自动关闭,如果设置为0,则不自动关闭 */
showType: 'fade', /* 窗口显示的类型,可选值有:show、fade、slide */
showSpeed: 'fast', /* 窗口显示的速度,可选值有:'slow'、'fast'、表示毫秒的整数 */
showIcon: true, /* 是否显示窗口标题的图标,true显示,false不显示,或自定义的CSS样式类名(以为图标为背景) */
showClose: true, /* 是否显示窗口右上角的关闭按钮 */
draggable: true, /* 是否可以拖动窗口 */
dragLimit: true, /* 在可以拖动窗口的情况下,是否限制在可视范围 */
dragClone: false, /* 在可以拖动窗口的情况下,鼠标按下时窗口是否克隆窗口 */
persistent: true, /* 在显示隔离层的情况下,点击隔离层时,是否坚持窗口不关闭 */
showScrolling: true, /* 是否显示浏览的滚动条 */
ajaxData: {}, /* 在窗口内容使用get:或post:前缀标识的情况下,ajax post的数据,例如:{ id: 1 } 或 "id=1" */
iframeScrolling: 'auto', /* 在窗口内容使用iframe:前缀标识的情况下,iframe的scrolling属性值,可选值有:'auto'、'yes'、'no' */
title: 'jBox', /* 窗口的标题 */
width: 350, /* 窗口的宽度,值为'auto'或表示像素的整数 */
height: 'auto', /* 窗口的高度,值为'auto'或表示像素的整数 */
bottomText: '', /* 窗口的按钮左边的内容,当没有按钮时此设置无效 */
buttons: { '确定': 'ok' }, /* 窗口的按钮 */
buttonsFocus: 0, /* 表示第几个按钮为默认按钮,索引从0开始 */
loaded: function (h) { }, /* 窗口加载完成后执行的函数,需要注意的是,如果是ajax或iframe也是要等加载完http请求才算窗口加载完成,
参数h表示窗口内容的jQuery对象 */
submit: function (v, h, f) { return true; },
/* 点击窗口按钮后的回调函数,返回true时表示关闭窗口,
参数有三个,v表示所点的按钮的返回值,h表示窗口内容的jQuery对象,f表示窗口内容里的form表单键值 */
closed: function () { } /* 窗口关闭后执行的函数 */
};
</code>
</pre>
</div>
<div id="stateDefaults" style="display:none;">
<pre class="config">
<code class="javascript">
$.jBox.stateDefaults = {
content: '', /* 状态的内容,不支持前缀标识 */
buttons: { '确定': 'ok' }, /* 状态的按钮 */
buttonsFocus: 0, /* 表示第几个按钮为默认按钮,索引从0开始 */
submit: function (v, h, f) { return true; }
/* 点击状态按钮后的回调函数,返回true时表示关闭窗口,
参数有三个,v表示所点的按钮的返回值,h表示窗口内容的jQuery对象,f表示窗口内容里的form表单键值 */
};
</code>
</pre>
</div>
<div id="tipDefaults" style="display:none;">
<pre class="config">
<code class="javascript">
$.jBox.tipDefaults = {
content: '', /* 提示的内容,不支持前缀标识 */
icon: 'info', /* 提示的图标,可选值有'info'、'success'、'warning'、'error'、'loading',
默认值为'info',当为'loading'时,timeout值会被设置为0,表示不会自动关闭。 */
top: '40%', /* 提示离顶部的距离,可以是百分比或像素(如 '100px') */
width: 'auto', /* 提示的高度,值为'auto'或表示像素的整数 */
height: 'auto', /* 提示的高度,值为'auto'或表示像素的整数 */
timeout: 2000, /* 提示显示多少毫秒后自动关闭,必须是大于0的整数 */
closed: function () { } /* 提示关闭后执行的函数 */
};
</code>
</pre>
</div>
<div id="messagerDefaults" style="display:none;">
<pre class="config">
<code class="javascript">
$.jBox.messagerDefaults = {
content: '', /* 信息的内容,不支持前缀标识 */
title: 'jBox', /* 信息的标题 */
icon: 'none', /* 信息图标,值为'none'时为不显示图标,可选值有'none'、'info'、'question'、'success'、'warning'、'error' */
width: 350, /* 信息的高度,值为'auto'或表示像素的整数 */
height: 'auto', /* 信息的高度,值为'auto'或表示像素的整数 */
timeout: 3000, /* 信息显示多少毫秒后自动关闭,如果设置为0,则不自动关闭 */
showType: 'slide', /* 信息显示的类型,可选值有:show、fade、slide */
showSpeed: 600, /* 信息显示的速度,可选值有:'slow'、'fast'、表示毫秒的整数 */
border: 0, /* 信息的外边框像素大小,必须是0以上的整数 */
buttons: {}, /* 信息的按钮 */
buttonsFocus: 0, /* 表示第几个按钮为默认按钮,索引从0开始 */
loaded: function (h) { }, /* 窗口加载完成后执行的函数,参数h表示窗口内容的jQuery对象 */
submit: function (v, h, f) { return true; },
/* 点击信息按钮后的回调函数,返回true时表示关闭窗口,
参数有三个,v表示所点的按钮的返回值,h表示窗口内容的jQuery对象,f表示窗口内容里的form表单键值 */
closed: function () { } /* 信息关闭后执行的函数 */
};
</code>
</pre>
</div>
<div id="languageDefaults" style="display:none;">
<pre class="config">
<code class="javascript">
$.jBox.languageDefaults = {
close: '关闭', /* 窗口右上角关闭按钮提示 */
ok: '确定', /* $.jBox.prompt() 系列方法的“确定”按钮文字 */
yes: '是', /* $.jBox.warning() 方法的“是”按钮文字 */
no: '否', /* $.jBox.warning() 方法的“否”按钮文字 */
cancel: '取消' /* $.jBox.confirm() 和 $.jBox.warning() 方法的“取消”按钮文字 */
};
</code>
</pre>
</div>
</div>
</body>
</html>
JS代码(jquery.jBox-2.3.min.js):
/** jQuery jBox 2.3* http://www.kudystudio.com* Author:kudy chen (kudychen@gmail.com)** Copyright 2011,kudy studio* Dual licensed under the MIT or GPL Version 3 licenses.** Last Modified:2011-11-11*/
;
eval(function(p,a,c,k,e,d){
e=function(c){
return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))}
;
if(!''.replace(/^/,String)){
while(c--)d[e(c)]=k[c]||e(c);
k=[function(e){
return d[e]}
];
e=function(){
return'\\w+'}
;
c=1;
}
;
while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);
return p;
}
('(8(a){
a.7=8(b,c){
c=a.1n({
}
,a.7.17,c);
c.1M=c.1V>9;
c.1p=c.1p||1q;
c.1A=c.1A||1q;
5(b==1y){
b=\'\'}
;
5(c.W<9){
c.W=9}
;
5(c.1t==1y){
c.1t=\'51\'+2U.52(2U.3i()*4Z)}
;
6 d=(a.1U.2e&&3u(a.1U.3a)<3r);
6 e=a(\'#\'+c.1t);
5(e.1I>9){
c.1k=a.7.17.1k++;
e.16({
1k:c.1k}
);
e.10(\'#4\').16({
1k:c.1k+1h}
);
1j e}
;
6 f={
2g:\'\',1x:\'\',1e:\'\',2j:b.50==53}
;
5(!f.2j){
b=b+\'\';
6 N=b.56();
5(N.1X(\'1t:\')==9)f.1x=\'4t\';
1b 5(N.1X(\'4C:\')==9)f.1x=\'35\';
1b 5(N.1X(\'57:\')==9)f.1x=\'30\';
1b 5(N.1X(\'1F:\')==9)f.1x=\'2w\';
1b 5(N.1X(\'1e:\')==9)f.1x=\'3h\';
1b{
b=\'1e:\'+b;
f.1x=\'3h\'}
;
b=b.54(b.1X(":")+1h,b.1I)}
;
5(!c.1p&&!c.1A&&!c.4s){
a(a.1U.2e?\'1e\':\'1z\').3c(\'11\',\'2a:2l;
1f-27:55;
\')}
;
6 g=!c.1p&&!(c.1o==1y);
6 h=f.1x==\'35\'||f.1x==\'30\'||f.1x==\'2w\';
6 i=1L c.14==\'36\'?(c.14-4Y)+\'19\':"4R%";
6 j=[];
j.X(\'<Z 1t="\'+c.1t+\'" 1a="4-\'+(c.1p?\'1v\':(c.1A?\'3l\':\'1z\'))+\'">\');
5(c.1M){
5((d&&a(\'1F\').1I>9)||a(\'4S,4P\').1I>9){
j.X(\'<1F 1t="4-24" 1a="4-24" 3y="3M:3X" 11="1D:2R;
1s:1B;
z-3t:-1;
"></1F>\')}
1b{
5(d){
a(\'3Z\').16(\'3L\',\'2l\')}
;
j.X(\'<Z 1t="4-24" 1a="4-24" 11="1s:1B;
"></Z>\')}
}
;
j.X(\'<Z 1t="4-3m" 1a="4-3m" 11="14:1c;
Y:1c;
4Q-4x:#4T;
1s:1B;
z-3t:45;
4W:1d;
"></Z>\');
5(c.1Y){
j.X(\'<Z 1t="4-47" 1a="4-47" 11="1s:1B;
z-3t:45;
1D:1d;
"></Z>\')}
;
j.X(\'<Z 1t="4" 1a="4" 11="1s:1B;
14:1m;
Y:1m;
">\');
j.X(\'<Z 1a="4-2W-1o 4-1o-23" 11="Y:2s;
1D:1d;
"></Z>\');
j.X(\'<Z 1a="4-2W-1l 4-1l-23" 11="Y:2s;
1f:2Z 0 2Z 0;
1D:1d;
"></Z>\');
j.X(\'<4p W="0" 4X="0" 4U="0" 11="1E:1c;
1f:1c;
W:1d;
">\');
5(c.W>9){
j.X(\'<2n>\');
j.X(\'<1u 1a="4-W" 11="1E:1c;
1f:1c;
W:1d;
W-3d:\'+c.W+\'19 0 0 0;
14:\'+c.W+\'19;
Y:\'+c.W+\'19;
"></1u>\');
j.X(\'<1u 1a="4-W" 11="1E:1c;
1f:1c;
W:1d;
Y:\'+c.W+\'19;
2a:2l;
"></1u>\');
j.X(\'<1u 1a="4-W" 11="1E:1c;
1f:1c;
W:1d;
W-3d:0 \'+c.W+\'19 0 0;
14:\'+c.W+\'19;
Y:\'+c.W+\'19;
"></1u>\');
j.X(\'</2n>\')}
;
j.X(\'<2n>\');
j.X(\'<1u 1a="4-W" 11="1E:1c;
1f:1c;
W:1d;
"></1u>\');
j.X(\'<1u 4V="18" 11="1E:1c;
1f:1c;
W:1d;
">\');
j.X(\'<Z 1a="4-4v" 11="14:1m;
Y:1m;
">\');
j.X(\'<a 1a="4-1J" 1o="\'+a.7.1S.1J+\'" 58="$(21).2x(\\\'4-1J-2E\\\');
" 5l="$(21).2I(\\\'4-1J-2E\\\');
" 11="1s:1B;
1D:2R;
4w:5m;
18:\'+(4D+c.W)+\'19;
27:\'+(4D+c.W)+\'19;
14:4z;
Y:4z;
\'+(c.34?\'\':\'1D:1d;
\')+\'"></a>\');
5(g){
j.X(\'<Z 1a="4-1o-23" 11="Y:2s;
">\');
j.X(\'<Z 1a="4-1o\'+(c.2L==1i?\' 4-1o-12\':(c.2L==1q?\'\':\' \'+c.2L))+\'" 11="3W:1g;
14:\'+i+\';
3j-Y:\'+(a.1U.2e?5j:5k)+\'19;
1f-1g:\'+(c.2L?5n:2X)+\'19;
2a:2l;
1T-2a:5q;
5r-1K:1K-5o;
">\'+(c.1o==\'\'?\'&5p;
\':c.1o)+\'</Z>\');
j.X(\'</Z>\')}
;
j.X(\'<Z 1t="4-2T"></Z></Z>\');
j.X(\'</Z>\');
j.X(\'</1u>\');
j.X(\'<1u 1a="4-W" 11="1E:1c;
1f:1c;
W:1d;
"></1u>\');
j.X(\'</2n>\');
5(c.W>9){
j.X(\'<2n>\');
j.X(\'<1u 1a="4-W" 11="1E:1c;
1f:1c;
W:1d;
W-3d:0 0 0 \'+c.W+\'19;
14:\'+c.W+\'19;
Y:\'+c.W+\'19;
"></1u>\');
j.X(\'<1u 1a="4-W" 11="1E:1c;
1f:1c;
W:1d;
Y:\'+c.W+\'19;
2a:2l;
"></1u>\');
j.X(\'<1u 1a="4-W" 11="1E:1c;
1f:1c;
W:1d;
W-3d:0 0 \'+c.W+\'19 0;
14:\'+c.W+\'19;
Y:\'+c.W+\'19;
"></1u>\');
j.X(\'</2n>\')}
;
j.X(\'</4p>\');
j.X(\'</Z>\');
j.X(\'</Z>\');
6 k=\'<1F 2h="4-1F" 1t="4-1F" 14="2v%" Y="2v%" 5i="0" 5b="0" 5c="0" 59="\'+c.4r+\'"></1F>\';
6 l=a(2f);
6 m=a(1H.1z);
6 n=a(j.2m(\'\')).5a(m);
6 o=n.2r(\'#4\');
6 p=n.2r(\'#4-24\');
6 q=n.2r(\'#4-3m\');
5(!f.2j){
3H(f.1x){
1R"4t":f.1e=a(\'#\'+b).1e();
1K;
1R"35":1R"30":f.1e=\'\';
f.2g=b;
1K;
1R"3h":f.1e=b;
1K;
1R"2w":f.1e=k;
5(b.1X(\'#\')==-1h){
f.2g=b+(b.1X(\'?\')==-1h?\'?39\':\'&39\')+2U.3i()}
1b{
6 N=b.5d(\'#\');
f.2g=N[9]+(N[9].1X(\'?\')==-1h?\'?39\':\'&39\')+2U.3i()+\'#\'+N[1h]}
;
1K}
;
b={
5g:{
13:f.1e,1C:c.1C,2o:c.2o,1W:c.1W}
}
}
;
6 r=[];
6 s=o.10(\'.4-2W-1o\').3N(1i);
6 t=o.10(\'.4-2W-1l\').3N(1i);
6 u=a.1U.2e?\'3j-Y:3V;
1f:1c 3O 1c 3O;
\':\'1f:1c 2N 1c 2N;
\';
a.2C(b,8(N,O){
5(f.2j){
O=a.1n({
}
,a.7.2O,O)}
;
b[N]=O;
5(O.1C==1y){
O.1C={
}
}
;
6 P=1q;
a.2C(O.1C,8(T,U){
P=1i}
);
6 Q=\'1m\';
5(1L c.Y==\'36\'){
Q=c.Y;
5(g){
Q=Q-s}
;
5(P){
Q=Q-t}
;
Q=(Q-1h)+\'19\'}
;
6 R=\'\';
6 S=\'2s\';
5(!f.2j&&h){
6 T=c.Y;
5(1L c.Y==\'36\'){
5(g){
T=T-s}
;
5(P){
T=T-t}
;
S=((T/2X)*1N)+\'19\';
T=(T-1h)+\'19\'}
;
R=[\'<Z 1t="4-13-2B" 1a="4-13-2B" 11="2P-Y:5h;
Y:\'+T+\';
1T-2k:42;
">\',\'<Z 1a="4-13-2B-5e" 11="1D:2R;
1E:1m;
14:5f;
Y:3V;
1f-18:\'+S+\';
"></Z>\',\'</Z>\'].2m(\'\')}
;
r.X(\'<Z 1t="4-1G-\'+N+\'" 1a="4-1G" 11="1D:1d;
">\');
r.X(\'<Z 11="2P-14:3o;
14:\'+(1L c.14==\'36\'?c.14+\'19\':\'1m\')+\';
Y:\'+Q+\';
">\'+R+\'<Z 1t="4-13" 1a="4-13" 11="Y:\'+Q+\';
2a:2l;
2a-y:1m;
">\'+O.13+\'</Z></Z>\');
r.X(\'<Z 1a="4-1l-23" 11="Y:2s;
1f:2Z 0 2Z 0;
1T-2k:27;
\'+(P?\'\':\'1D:1d;
\')+\'">\');
5(!c.1p){
r.X(\'<26 1a="4-29-1T" 11="3W:1g;
1D:2R;
3j-Y:2s;
"></26>\')}
;
a.2C(O.1C,8(T,U){
r.X(\'<1l 1a="4-1l" 31="\'+U+\'" 11="\'+u+\'">\'+T+\'</1l>\')}
);
r.X(\'</Z></Z>\')}
);
o.10(\'#4-2T\').1e(r.2m(\'\')).2r(\'.4-1G:3k\').16(\'1D\',\'2R\');
5(h){
6 N=o.10(\'#4-13\').16({
1s:(d)?"1B":"32",1g:-4H}
)}
;
a.2C(b,8(N,O){
6 P=o.10(\'#4-1G-\'+N);
P.2r(\'.4-1l-23\').2r(\'1l\').2c(8(){
6 Q=P.10(\'#4-13\');
6 R=O.1C[a(21).1T()];
6 S={
}
;
a.2C(o.10(\'#4-2T:4h\').4M(),8(U,V){
5(S[V.2h]===1y){
S[V.2h]=V.31}
1b 5(1L S[V.2h]==4L){
S[V.2h].X(V.31)}
1b{
S[V.2h]=[S[V.2h],V.31]}
}
);
6 T=O.1W(R,Q,S);
5(T===1y||T){
I()}
}
).1P(\'2t\',8(){
a(21).2x(\'4-1l-3x\')}
).1P(\'4A\',8(){
a(21).2I(\'4-1l-3x\')}
).1P(\'4G\',8(){
a(21).2x(\'4-1l-2E\')}
).1P(\'4O\',8(){
a(21).2I(\'4-1l-3x\').2I(\'4-1l-2E\')}
);
P.10(\'.4-1l-23 1l:2V(\'+O.2o+\')\').2x(\'4-1l-1O\')}
);
6 v=8(){
n.16({
18:l.3e()}
);
5(c.1A){
o.16({
1s:(d)?"1B":"32",27:1h,29:1h}
)}
}
;
6 w=8(){
6 N=l.14();
1j 1H.1z.3I<N?N:1H.1z.3I}
;
6 x=8(){
6 N=l.Y();
1j 1H.1z.3C<N?N:1H.1z.3C}
;
6 y=8(){
5(!c.1M){
1j}
;
5(c.4q){
6 N=9;
n.2x(\'4-25\');
6 O=4K(8(){
n.4J(\'4-25\');
5(N++>1h){
4I(O);
n.2I(\'4-25\')}
}
,4N)}
1b{
I()}
}
;
6 z=8(N){
5(c.1p||c.1A){
1j 1q}
;
6 O=(2f.4f)?4f.4g:N.4g;
5(O==4F){
I()}
;
5(O==5Z){
6 P=a(\':4h:5Y:2p\',n);
6 Q=!N.4e&&N.1r==P[P.1I-1h];
6 R=N.4e&&N.1r==P[9];
5(Q||R){
38(8(){
5(!P)1j;
6 S=P[R===1i?P.1I-1h:9];
5(S)S.1O()}
,2G);
1j 1q}
}
}
;
6 A=8(){
5(c.1M){
p.16({
1s:"1B",Y:c.1p?x():l.Y(),14:d?l.14():"2v%",18:9,1g:9,27:9,29:9}
)}
}
;
6 B=8(){
5(c.1A){
o.16({
1s:(d)?"1B":"32",27:1h,29:1h}
)}
1b{
q.16({
18:c.18}
);
o.16({
1s:"1B",18:q.3f().18+(c.1p?l.3e():9),1g:((l.14()-o.3S())/1N)}
)}
;
5((c.1M&&!c.1p)||(!c.1M&&!c.1p&&!c.1A)){
n.16({
1s:(d)?"1B":"32",Y:c.1M?l.Y():9,14:"2v%",18:(d)?l.3e():9,1g:9,27:9,29:9}
)}
;
A()}
;
6 C=8(){
c.1k=a.7.17.1k++;
n.16({
1k:c.1k}
);
o.16({
1k:c.1k+1h}
)}
;
6 D=8(){
c.1k=a.7.17.1k++;
n.16({
1k:c.1k}
);
o.16({
1D:"1d",1k:c.1k+1h}
);
5(c.1M){
p.16({
1D:"1d",1k:c.1k,1V:c.1V}
)}
}
;
6 E=8(N){
6 O=N.1w;
O.1r.10(\'1F\').2K();
5(c.22){
O.1r.2u().16({
1g:O.1r.16(\'1g\'),18:O.1r.16(\'18\'),61:-1N,60:-1N,14:O.1r.14()+1N,Y:O.1r.Y()+1N}
).1Z()}
;
1j 1q}
;
6 F=8(N){
6 O=N.1w;
6 P=O.49+N.4c-O.43;
6 Q=O.4y+N.48-O.4a;
5(c.4o){
6 R=1h;
6 S=1H.46.3C-N.1w.1r.Y()-1h;
6 T=1h;
6 U=1H.46.3I-N.1w.1r.14()-1h;
5(Q<R)Q=R+(c.22?1N:9);
5(Q>S)Q=S-(c.22?1N:9);
5(P<T)P=T+(c.22?1N:9);
5(P>U)P=U-(c.22?1N:9)}
;
5(c.22){
O.1r.2u().16({
1g:P,18:Q}
)}
1b{
O.1r.16({
1g:P,18:Q}
)}
;
1j 1q}
;
6 G=8(N){
a(1H).2i(\'.1Y\');
5(c.22){
6 O=N.1w.1r.2u().2K();
N.1w.1r.16({
1g:O.16(\'1g\'),18:O.16(\'18\')}
).10(\'1F\').1Z()}
1b{
N.1w.1r.10(\'1F\').1Z()}
;
1j 1q}
;
6 H=8(N){
6 O=N.1w.1r.1s();
6 P={
1r:N.1w.1r,43:N.4c,4a:N.48,49:O.1g,4y:O.18}
;
a(1H).1P(\'2t.1Y\',P,E).1P(\'5V.1Y\',P,F).1P(\'4A.1Y\',P,G)}
;
6 I=8(){
5(!c.1p&&!c.1A){
5(a(\'.4-1z\').1I==1h){
a(a.1U.2e?\'1e\':\'1z\').5U(\'11\')}
;
J()}
1b{
5(c.1p){
6 1v=a(1H.1z).1w(\'1v\');
5(1v&&1v.2F==1i){
q.16(\'18\',1v.33.18);
6 N=q.3f().18+l.3e();
5(N==o.3f().18){
J()}
1b{
o.10(\'#4-13\').1e(1v.33.13.5X(2X)).5W().16({
1g:((l.14()-o.3S())/1N)}
).41({
18:N,1V:0.1}
,3J,J)}
}
1b{
o.41({
18:\'-=62\',1V:9}
,3J,J)}
}
1b{
3H(c.2J){
1R\'3D\':o.4b(c.20,J);
1K;
1R\'24\':o.3P(c.20,J);
1K;
1R\'1Z\':3R:o.2K(c.20,J);
1K}
}
}
}
;
6 J=8(){
l.2i(\'3U\',A);
5(c.1Y&&!c.1p&&!c.1A){
o.10(\'.4-1o-23\').2i(\'2t\',H)}
;
5(f.1x!=\'2w\'){
o.10(\'#4-1F\').3c({
\'3y\':\'3M:3X\'}
)}
;
o.1e(\'\').3F();
5(d&&!c.1p){
m.2i(\'3T\',v)}
;
5(c.1M){
p.3P(\'37\',8(){
p.2i(\'2c\',y).2i(\'2t\',C).1e(\'\').3F()}
)}
;
n.2i(\'3Y 3K\',z).1e(\'\').3F();
5(d&&c.1M){
a(\'3Z\').16(\'3L\',\'2p\')}
;
5(1L c.2H==\'8\'){
c.2H()}
}
;
6 K=8(){
5(c.1Q>9){
o.1w(\'3B\',2f.38(I,c.1Q));
5(c.1A){
o.2E(8(){
2f.63(o.1w(\'3B\'))}
,8(){
o.1w(\'3B\',2f.38(I,c.1Q))}
)}
}
}
;
6 L=8(){
5(1L c.2Y==\'8\'){
c.2Y(o.10(\'.4-1G:2p\').10(\'.4-13\'))}
}
;
5(!f.2j){
3H(f.1x){
1R"35":1R"30":a.64({
1x:f.1x,2g:f.2g,1w:c.3g==1y?{
}
:c.3g,5B:\'1e\',5A:1q,2y:8(N,O){
o.10(\'#4-13\').16({
1s:"3Q"}
).1e(N).1Z().2u().2K();
L()}
,2z:8(){
o.10(\'#4-13-2B\').1e(\'<Z 11="1f-18:3o;
1f-29:3o;
1T-2k:42;
">5z 5C.</Z>\')}
}
);
1K;
1R"2w":o.10(\'#4-1F\').3c({
\'3y\':f.2g}
).1P("5F",8(N){
a(21).5E().16({
1s:"3Q"}
).1Z().2u().2K();
o.10(\'#4-2T .4-1G:3k .4-1l-1O\').1O();
L()}
);
1K;
3R:o.10(\'#4-13\').1Z();
1K}
}
;
B();
D();
5(d&&!c.1p){
l.3T(v)}
;
5(c.1M){
p.2c(y)}
;
l.3U(A);
n.1P(\'3Y 3K\',z);
o.10(\'.4-1J\').2c(I);
5(c.1M){
p.4u(\'37\')}
;
6 M=\'1Z\';
5(c.2J==\'3D\'){
M=\'44\'}
1b 5(c.2J==\'24\'){
M=\'4u\'}
;
5(c.1A){
o[M](c.20,K)}
1b{
6 1v=a(1H.1z).1w(\'1v\');
5(1v&&1v.2F==1i){
a(1H.1z).1w(\'1v\',{
2F:1q,33:{
}
}
);
o.16(\'1D\',\'\')}
1b{
5(!f.2j&&h){
o[M](c.20)}
1b{
o[M](c.20,L);
}
}
}
;
5(!c.1p){
o.10(\'.4-29-1T\').1e(c.4E)}
1b{
o.10(\'.4-4v,.4-13\').2x(\'4-1v-4x\')}
;
5(f.1x!=\'2w\'){
o.10(\'#4-2T .4-1G:3k .4-1l-1O\').1O()}
1b{
o.1O()}
;
5(!c.1A){
K()}
;
n.1P(\'2t\',C);
5(c.1Y&&!c.1p&&!c.1A){
o.10(\'.4-1o-23\').1P(\'2t\',{
1r:o}
,H).16(\'4w\',\'5D\')}
;
1j n}
;
a.7.3a=2.3;
a.7.17={
1t:3A,18:"15%",1k:5u,W:2X,1V:0.1,1Q:9,2J:\'24\',20:\'37\',2L:1i,34:1i,1Y:1i,4o:1i,22:1q,4q:1i,4s:1i,3g:{
}
,4r:\'1m\',1o:\'7\',14:3p,Y:\'1m\',4E:\'\',1C:{
\'3z\':\'2b\'}
,2o:9,2Y:8(b){
}
,1W:8(b,c,d){
1j 1i}
,2H:8(){
}
}
;
a.7.2O={
13:\'\',1C:{
\'3z\':\'2b\'}
,2o:9,1W:8(b,c,d){
1j 1i}
}
;
a.7.2Q={
13:\'\',12:\'28\',18:\'40%\',14:\'1m\',Y:\'1m\',1V:9,1Q:4B,2H:8(){
}
}
;
a.7.2A={
13:\'\',1o:\'7\',12:\'1d\',14:3p,Y:\'1m\',1Q:4B,2J:\'3D\',20:5t,W:9,1C:{
}
,2o:9,2Y:8(){
}
,1W:8(b,c,d){
1j 1i}
,2H:8(){
}
}
;
a.7.1S={
1J:\'5s\',2b:\'3z\',3n:\'5v\',3q:\'5y\',2S:\'5x\'}
;
a.7.5w=8(b){
a.7.17=a.1n({
}
,a.7.17,b.17);
a.7.2O=a.1n({
}
,a.7.2O,b.2O);
a.7.2Q=a.1n({
}
,a.7.2Q,b.2Q);
a.7.2A=a.1n({
}
,a.7.2A,b.2A);
a.7.1S=a.1n({
}
,a.7.1S,b.1S)}
;
a.7.2D=8(){
1j a(\'.4-1z\').2V(a(\'.4-1z\').1I-1h)}
;
a.7.5P=8(b){
6 c=(1L b==\'3v\')?a(\'#\'+b):a.7.2D();
1j c.10(\'#4-1F\').4C(9)}
;
a.7.5O=8(){
1j a.7.3b().10(\'.4-13\').1e()}
;
a.7.5N=8(b){
1j a.7.3b().10(\'.4-13\').1e(b)}
;
a.7.3b=8(b){
5(b==1y){
1j a.7.2D().10(\'.4-1G:2p\')}
1b{
1j a.7.2D().10(\'#4-1G-\'+b)}
}
;
a.7.5Q=8(){
1j a.7.3b().3c(\'1t\').5T(\'4-1G-\',\'\')}
;
a.7.3w=8(b,c){
6 d=a.7.2D();
5(d!=1y&&d!=3A){
6 e;
b=b||1q;
d.10(\'.4-1G\').4b(\'37\');
5(1L b==\'3v\'){
e=d.10(\'#4-1G-\'+b)}
1b{
e=b?d.10(\'.4-1G:2p\').2F():d.10(\'.4-1G:2p\').2u()}
;
e.44(3p,8(){
2f.38(8(){
e.10(\'.4-1l-1O\').1O();
5(c!=1y){
e.10(\'.4-13\').1e(c)}
}
,5S)}
)}
}
;
a.7.5R=8(b){
a.7.3w(1i,b)}
;
a.7.5I=8(b){
a.7.3w(1q,b)}
;
a.7.1J=8(b,c){
b=b||1q;
c=c||\'1z\';
5(1L b==\'3v\'){
a(\'#\'+b).10(\'.4-1J\').2c()}
1b{
6 d=a(\'.4-\'+c);
5(b){
5H(6 e=9,l=d.1I;
e<l;
++e){
d.2V(e).10(\'.4-1J\').2c()}
}
1b{
5(d.1I>9){
d.2V(d.1I-1h).10(\'.4-1J\').2c()}
}
}
}
;
a.7.5G=8(b,c,d,e,f){
6 17={
13:b,1o:c,14:d,Y:e}
;
f=a.1n({
}
,17,f);
f=a.1n({
}
,a.7.17,f);
a.7(f.13,f)}
;
a.7.2d=8(b,c,d,e){
6 17={
13:b,1o:c,12:d,1C:3s(\'({
"\'+a.7.1S.2b+\'":"2b"}
)\')}
;
e=a.1n({
}
,17,e);
e=a.1n({
}
,a.7.17,e);
5(e.W<9){
e.W=9}
;
5(e.12!=\'28\'&&e.12!=\'25\'&&e.12!=\'2y\'&&e.12!=\'2z\'&&e.12!=\'3G\'){
1f=\'\';
e.12=\'1d\'}
;
6 f=e.1o==1y?2G:4j;
6 g=e.12==\'1d\'?\'Y:1m;
\':\'2P-Y:2M;
\'+((a.1U.2e&&3u(a.1U.3a)<3r)?\'Y:1m !4l;
Y:2v%;
4n:2M;
\':\'Y:1m;
\');
6 h=[];
h.X(\'1e:\');
h.X(\'<Z 11="1E:2N;
\'+g+\'1f-1g:\'+(e.12==\'1d\'?9:4m)+\'19;
1T-2k:1g;
">\');
h.X(\'<26 1a="4-12 4-12-\'+e.12+\'" 11="1s:1B;
18:\'+(f+e.W)+\'19;
1g:\'+(2G+e.W)+\'19;
14:2q;
Y:2q;
"></26>\');
h.X(e.13);
h.X(\'</Z>\');
e.13=h.2m(\'\');
a.7(e.13,e)}
;
a.7.5J=8(b,c,d){
a.7.2d(b,c,\'1d\',d)}
;
a.7.28=8(b,c,d){
a.7.2d(b,c,\'28\',d)}
;
a.7.2y=8(b,c,d){
a.7.2d(b,c,\'2y\',d)}
;
a.7.2z=8(b,c,d){
a.7.2d(b,c,\'2z\',d)}
;
a.7.5M=8(b,c,d,e){
6 17={
1C:3s(\'({
"\'+a.7.1S.2b+\'":"2b","\'+a.7.1S.2S+\'":"2S"}
)\')}
;
5(d!=1y&&1L d==\'8\'){
17.1W=d}
1b{
17.1W=8(f,g,h){
1j 1i}
}
;
e=a.1n({
}
,17,e);
a.7.2d(b,c,\'3G\',e)}
;
a.7.25=8(b,c,d,e){
6 17={
1C:3s(\'({
"\'+a.7.1S.3n+\'":"3n","\'+a.7.1S.3q+\'":"3q","\'+a.7.1S.2S+\'":"2S"}
)\')}
;
5(d!=1y&&1L d==\'8\'){
17.1W=d}
1b{
17.1W=8(f,g,h){
1j 1i}
}
;
e=a.1n({
}
,17,e);
a.7.2d(b,c,\'25\',e)}
;
a.7.1v=8(b,c,d){
6 17={
13:b,12:c,1V:9,W:9,34:1q,1C:{
}
,1p:1i}
;
5(17.12==\'2B\'){
17.1Q=9;
17.1V=0.1}
;
d=a.1n({
}
,17,d);
d=a.1n({
}
,a.7.2Q,d);
d=a.1n({
}
,a.7.17,d);
5(d.1Q<9){
d.1Q=9}
;
5(d.W<9){
d.W=9}
;
5(d.12!=\'28\'&&d.12!=\'25\'&&d.12!=\'2y\'&&d.12!=\'2z\'&&d.12!=\'2B\'){
d.12=\'28\'}
;
6 e=[];
e.X(\'1e:\');
e.X(\'<Z 11="2P-Y:5L;
Y:1m;
1E:2N;
1f-1g:2M;
1f-18:1c;
1T-2k:1g;
">\');
e.X(\'<26 1a="4-12 4-12-\'+d.12+\'" 11="1s:1B;
18:\'+(4d+d.W)+\'19;
1g:\'+(4d+d.W)+\'19;
14:2q;
Y:2q;
"></26>\');
e.X(d.13);
e.X(\'</Z>\');
d.13=e.2m(\'\');
5(a(\'.4-1v\').1I>9){
a(1H.1z).1w(\'1v\',{
2F:1i,33:d}
);
a.7.4k()}
;
5(d.3E!=1y){
a(\'#\'+d.3E).1O();
18.$(\'#\'+d.3E).1O()}
;
a.7(d.13,d)}
;
a.7.4k=8(){
a.7.1J(1q,\'1v\')}
;
a.7.3l=8(b,c,d,e){
a.7.4i();
6 17={
13:b,1o:c,1Q:(d==1y?a.7.2A.1Q:d),1V:9,34:1i,1Y:1q,1A:1i}
;
e=a.1n({
}
,17,e);
e=a.1n({
}
,a.7.2A,e);
6 f=a.1n({
}
,a.7.17,{
}
);
f.1o=3A;
e=a.1n({
}
,f,e);
5(e.W<9){
e.W=9}
;
5(e.12!=\'28\'&&e.12!=\'25\'&&e.12!=\'2y\'&&e.12!=\'2z\'&&e.12!=\'3G\'){
1f=\'\';
e.12=\'1d\'}
;
6 g=e.1o==1y?2G:4j;
6 h=e.12==\'1d\'?\'Y:1m;
\':\'2P-Y:2M;
\'+((a.1U.2e&&3u(a.1U.3a)<3r)?\'Y:1m !4l;
Y:2v%;
4n:2M;
\':\'Y:1m;
\');
6 i=[];
i.X(\'1e:\');
i.X(\'<Z 11="1E:2N;
\'+h+\'1f-1g:\'+(e.12==\'1d\'?9:4m)+\'19;
1T-2k:1g;
">\');
i.X(\'<26 1a="4-12 4-12-\'+e.12+\'" 11="1s:1B;
18:\'+(g+e.W)+\'19;
1g:\'+(2G+e.W)+\'19;
14:2q;
Y:2q;
"></26>\');
i.X(e.13);
i.X(\'</Z>\');
e.13=i.2m(\'\');
a.7(e.13,e)}
;
a.7.4i=8(){
a.7.1J(1q,\'3l\')}
;
2f.7=a.7}
)(5K);
',62,377,'||||jbox|if|var|jBox|function|0x0|||||||||||||||||||||||||||||||||||||||||||||||||border|push|height|div|find|style|icon|content|width||css|defaults|top|px|class|else|0px|none|html|padding|left|0x1|true|return|zIndex|button|auto|extend|title|isTip|false|target|position|id|td|tip|data|type|undefined|body|isMessager|absolute|buttons|display|margin|iframe|state|document|length|close|break|typeof|showFade|0x2|focus|bind|timeout|case|languageDefaults|text|browser|opacity|submit|indexOf|draggable|show|showSpeed|this|dragClone|panel|fade|warning|span|right|info|bottom|overflow|ok|click|prompt|msie|window|url|name|unbind|isObject|align|hidden|join|tr|buttonsFocus|visible|32px|children|25px|mousedown|prev|100|IFRAME|addClass|success|error|messagerDefaults|loading|each|getBox|hover|next|0xa|closed|removeClass|showType|hide|showIcon|30px|10px|stateDefaults|min|tipDefaults|block|cancel|states|Math|eq|help|0x5|loaded|5px|POST|value|fixed|options|showClose|GET|number|fast|setTimeout|___t|version|getState|attr|radius|scrollTop|offset|ajaxData|HTML|random|line|first|messager|temp|yes|50px|0x15e|no|0x7|eval|index|parseInt|string|goToState|active|src|确定|null|autoClosing|clientHeight|slide|focusId|remove|question|switch|clientWidth|0x1f4|keypress|visibility|about|outerHeight|6px|fadeOut|static|default|outerWidth|scroll|resize|19px|float|blank|keydown|select||animate|center|startX|slideDown|1984|documentElement|drag|pageY|startLeft|startY|slideUp|pageX|0x4|shiftKey|event|keyCode|input|closeMessager|0x23|closeTip|important|0x28|_height|dragLimit|table|persistent|iframeScrolling|showScrolling|ID|fadeIn|container|cursor|color|startTop|15px|mouseup|0xbb8|get|0x6|bottomText|0x1b|mouseover|0x2710|clearInterval|toggleClass|setInterval|Array|serializeArray|0x64|mouseout|applet|background|90|object|ff3300|cellspacing|valign|fdisplay|cellpadding|0x32|0xf4240|constructor|jBox_|floor|Object|substring|17px|toLowerCase|post|onmouseover|scrolling|appendTo|marginwidth|frameborder|split|image|220px|state0|70px|marginheight|0x19|0x18|onmouseout|pointer|0x12|all|nbsp|ellipsis|word|关闭|0x258|0x7c0|是|setDefaults|取消|否|Loading|cache|dataType|Error|move|parent|load|open|for|prevState|alert|jQuery|18px|confirm|setContent|getContent|getIframe|getStateName|nextState|0x14|replace|removeAttr|mousemove|end|substr|enabled|0x9|marginTop|marginLeft|200|clearTimeout|ajax'.split('|'),0,{
}
));