<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
<title><![CDATA[老黑]]></title>
<link>http://www.blackliu.com/</link>
<description><![CDATA[老黑-记录我的生活点滴]]></description>
<webMaster><![CDATA[blackliu@foxmail.com(老黑)]]></webMaster><language>zh-cn</language><copyright><![CDATA[Powered by fj126.net. Copyright © 2004-2008 老黑]]></copyright>
<generator><![CDATA[Bcms 1.1.1006]]></generator>
<lastBuildDate>Mon, 21 May 2012 08:51:25 +0800</lastBuildDate>
<ttl>60</ttl>
<item>
<guid>http://www.blackliu.com/art/html/66/</guid>
<title><![CDATA[鼠标移过图片变清晰效果]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;IMG onmouseover=nereidFade(this,100,3,5) style=&quot;FILTER: alpha(opacity=55)&quot; onmouseout=nereidFade(this,50,3,5) src=&quot;http://www.blackliu.com/images/logo.jpg&quot; border=0&gt;
&lt;script language=JavaScript&gt; 
nereidFadeObjects = new Object();
nereidFadeTimers = new Object();
function nereidFade(object, destOp, rate, delta){
if (!document.all)
return
			 if (object != &quot;[object]&quot;){	 //do this so I can take a string too
							 setTimeout(&quot;nereidFade(&quot;+object+&quot;,&quot;+destOp+&quot;,&quot;+rate+&quot;,&quot;+delta+&quot;)&quot;,0);
							 return;
			 }
			 clearTimeout(nereidFadeTimers[object.sourceIndex]);
			 diff = destOp-object.filters.alpha.opacity;
			 direction = 1;
			 if (object.filters.alpha.opacity &gt; destOp){
							 direction = -1;
			 }
			 delta=Math.min(direction*diff,delta);
			 object.filters.alpha.opacity+=direction*delta;
			 if (object.filters.alpha.opacity != destOp){
							 nereidFadeObjects[object.sourceIndex]=object;
							 nereidFadeTimers[object.sourceIndex]=setTimeout(&quot;nereidFade(nereidFadeObjects[&quot;+object.sourceIndex+&quot;],&quot;+destOp+&quot;,&quot;+rate+&quot;,&quot;+delta+&quot;)&quot;,rate);
			 }
}
&lt;/script&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/66/</link>
<category domain="http://www.blackliu.com/art/cat/2/"><![CDATA[WEB应用]]></category>
<pubDate>Fri, 03 Jul 2009 23:55:06 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/65/</guid>
<title><![CDATA[用相对定位和负向移动完成图片象框阴影]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;style&gt;
.out {
	 position:relative;
	 background:#bbb; 
	 margin:10px auto;
	 width:285px
	 }
.in {
	 background:#fff; 
	 border:1px solid #555;
	 padding:10px 5px;
	 position:relative; 
	 top:-5px;
	 left:-5px;
	 }
&lt;/style&gt;&lt;div class=&quot;out&quot;&gt; &lt;div class=&quot;in&quot; &gt; &lt;img src=&quot;http://www.lanrentuku.com/lanren/jscode/js-0058/images/01.jpg&quot; alt=&quot;&quot; /&gt; &lt;/div&gt;&lt;/div&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/65/</link>
<category domain="http://www.blackliu.com/art/cat/2/"><![CDATA[WEB应用]]></category>
<pubDate>Fri, 03 Jul 2009 23:47:52 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/64/</guid>
<title><![CDATA[记录并显示网页的最后修改时间]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;script language=JavaScript&gt; 
document.write(&quot;最后更新时间: &quot; + document.lastModified + &quot;&quot;) 
&lt;/script&gt;
记录并显示网页的最后修改时间
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/64/</link>
<category domain="http://www.blackliu.com/art/cat/4/"><![CDATA[应用学习]]></category>
<pubDate>Fri, 03 Jul 2009 23:43:12 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/63/</guid>
<title><![CDATA[JS节日倒计时效果]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;Script Language=&quot;JavaScript&quot;&gt; 
　　 var timedate= new Date(&quot;October 1,2010&quot;); 
　　 var times= &quot;2010年国庆节&quot;; 
　　 var now = new Date(); 
　　 var date = timedate.getTime() - now.getTime(); 
　　 var time = Math.floor(date / (1000 * 60 * 60 * 24)); 
　　 if (time &gt;= 0) 
　　 document.write( &quot;现在离&quot;+times+&quot;还有: &quot;+time +&quot;天&quot;)
&lt;/Script&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/63/</link>
<category domain="http://www.blackliu.com/art/cat/3/"><![CDATA[脚本应用]]></category>
<pubDate>Fri, 03 Jul 2009 23:41:34 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/62/</guid>
<title><![CDATA[可以输入当前的时间一款日期输入控件]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;html&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=gb2312&quot;&gt;
&lt;title&gt;又一款日期输入控件，可以输入当前的时间&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;form name=&quot;form1&quot; method=&quot;post&quot; action=&quot;&quot;&gt;
	 &lt;p&gt;
			 &lt;input type=&quot;text&quot; name=&quot;textfield&quot;	 onFocus=&quot;CalendarWebControl.show(this,true,this.value);&quot;&gt; 
			 日期时间输入&lt;/p&gt;
	 &lt;p&gt;
			 &lt;input type=&quot;text&quot; name=&quot;textfield2&quot; onFocus=&quot;CalendarWebControl.show(this,false,this.value);&quot;&gt;
日期输入&lt;/p&gt;
&lt;/form&gt;
&lt;script language=&quot;javascript&quot;&gt;
function atCalendarControl(){
	 var calendar=this;
	 this.calendarPad=null;
	 this.prevMonth=null;
	 this.nextMonth=null;
	 this.prevYear=null;
	 this.nextYear=null;
	 this.goToday=null;
	 this.calendarClose=null;
	 this.calendarAbout=null;
	 this.head=null;
	 this.body=null;
	 this.today=[];
	 this.currentDate=[];
	 this.sltDate;
	 this.target;
	 this.source;
	 /************** 加入日历底板及阴影 *********************/
	 this.addCalendarPad=function(){
		 document.write(&quot;&lt;div id='divCalendarpad' style='position:absolute;top:100;left:0;width:255;height:187;display:none;'&gt;&quot;);
		 document.write(&quot;&lt;iframe frameborder=0 height=189 width=250&gt;&lt;/iframe&gt;&quot;);
		 document.write(&quot;&lt;div style='position:absolute;top:2;left:2;width:250;height:187;background-color:#336699;'&gt;&lt;/div&gt;&quot;);
		 document.write(&quot;&lt;/div&gt;&quot;);
		 calendar.calendarPad=document.all.divCalendarpad;
	 }
	 /************** 加入日历面板 *********************/
	 this.addCalendarBoard=function(){
		 var BOARD=this;
		 var divBoard=document.createElement(&quot;div&quot;);
		 calendar.calendarPad.insertAdjacentElement(&quot;beforeEnd&quot;,divBoard);
		 divBoard.style.cssText=&quot;position:absolute;top:0;left:0;width:250;height:187;border:0 outset;background-color:buttonface;&quot;;
		 var tbBoard=document.createElement(&quot;table&quot;);
		 divBoard.insertAdjacentElement(&quot;beforeEnd&quot;,tbBoard);
		 tbBoard.style.cssText=&quot;position:absolute;top:2;left:2;width:248;height:10;font-size:9pt;&quot;;
		 tbBoard.cellPadding=0;
		 tbBoard.cellSpacing=1;
	 /************** 设置各功能按钮的功能 *********************/
		 /*********** Calendar About Button ***************/
		 trRow = tbBoard.insertRow(0);
		 calendar.calendarAbout=calendar.insertTbCell(trRow,0,&quot;-&quot;,&quot;center&quot;);
		 calendar.calendarAbout.title=&quot;帮助 快捷键:H&quot;;
		 calendar.calendarAbout.onclick=function(){calendar.about();}
		 /*********** Calendar Head ***************/
		 tbCell=trRow.insertCell(1);
		 tbCell.colSpan=5;
		 tbCell.bgColor=&quot;#99CCFF&quot;;
		 tbCell.align=&quot;center&quot;;
		 tbCell.style.cssText = &quot;cursor:default&quot;;
		 calendar.head=tbCell;
		 /*********** Calendar Close Button ***************/
		 tbCell=trRow.insertCell(2);
		 calendar.calendarClose = calendar.insertTbCell(trRow,2,&quot;x&quot;,&quot;center&quot;);
		 calendar.calendarClose.title=&quot;关闭 快捷键:ESC或X&quot;;
		 calendar.calendarClose.onclick=function(){calendar.hide();}
		 /*********** Calendar PrevYear Button ***************/
		 trRow = tbBoard.insertRow(1);
		 calendar.prevYear = calendar.insertTbCell(trRow,0,&quot;&lt;&lt;&quot;,&quot;center&quot;);
		 calendar.prevYear.title=&quot;上一年 快捷键:&uarr;&quot;;
		 calendar.prevYear.onmousedown=function(){
			 calendar.currentDate[0]--;
			 calendar.show(calendar.target,calendar.returnTime,calendar.currentDate[0]+&quot;-&quot;+calendar.formatTime(calendar.currentDate[1])+&quot;-&quot;+calendar.formatTime(calendar.currentDate[2]),calendar.source);
		 }
		 /*********** Calendar PrevMonth Button ***************/
		 calendar.prevMonth = calendar.insertTbCell(trRow,1,&quot;&lt;&quot;,&quot;center&quot;);
		 calendar.prevMonth.title=&quot;上一月 快捷键:&larr;&quot;;
		 calendar.prevMonth.onmousedown=function(){
			 calendar.currentDate[1]--;
			 if(calendar.currentDate[1]==0){
				 calendar.currentDate[1]=12;
				 calendar.currentDate[0]--;
			 }
			 calendar.show(calendar.target,calendar.returnTime,calendar.currentDate[0]+&quot;-&quot;+calendar.formatTime(calendar.currentDate[1])+&quot;-&quot;+calendar.formatTime(calendar.currentDate[2]),calendar.source);
		 }
		 /*********** Calendar Today Button ***************/
		 calendar.goToday = calendar.insertTbCell(trRow,2,&quot;今天&quot;,&quot;center&quot;,3);
		 calendar.goToday.title=&quot;选择今天 快捷键:T&quot;;
		 calendar.goToday.onclick=function(){
	 if(calendar.returnTime)	 
				 calendar.sltDate=calendar.today[0]+&quot;-&quot;+calendar.formatTime(calendar.today[1])+&quot;-&quot;+calendar.formatTime(calendar.today[2])+&quot; &quot;+calendar.formatTime(calendar.today[3])+&quot;:&quot;+calendar.formatTime(calendar.today[4])
	 else
				 calendar.sltDate=calendar.today[0]+&quot;-&quot;+calendar.formatTime(calendar.today[1])+&quot;-&quot;+calendar.formatTime(calendar.today[2]);
			 calendar.target.value=calendar.sltDate;
			 calendar.hide();
			 //calendar.show(calendar.target,calendar.today[0]+&quot;-&quot;+calendar.today[1]+&quot;-&quot;+calendar.today[2],calendar.source);
		 }
		 /*********** Calendar NextMonth Button ***************/
		 calendar.nextMonth = calendar.insertTbCell(trRow,3,&quot;&gt;&quot;,&quot;center&quot;);
		 calendar.nextMonth.title=&quot;下一月 快捷键:&rarr;&quot;;
		 calendar.nextMonth.onmousedown=function(){
			 calendar.currentDate[1]++;
			 if(calendar.currentDate[1]==13){
				 calendar.currentDate[1]=1;
				 calendar.currentDate[0]++;
			 }
			 calendar.show(calendar.target,calendar.returnTime,calendar.currentDate[0]+&quot;-&quot;+calendar.formatTime(calendar.currentDate[1])+&quot;-&quot;+calendar.formatTime(calendar.currentDate[2]),calendar.source);
		 }
		 /*********** Calendar NextYear Button ***************/
		 calendar.nextYear = calendar.insertTbCell(trRow,4,&quot;&gt;&gt;&quot;,&quot;center&quot;);
		 calendar.nextYear.title=&quot;下一年 快捷键:&darr;&quot;;
		 calendar.nextYear.onmousedown=function(){
			 calendar.currentDate[0]++;
			 calendar.show(calendar.target,calendar.returnTime,calendar.currentDate[0]+&quot;-&quot;+calendar.formatTime(calendar.currentDate[1])+&quot;-&quot;+calendar.formatTime(calendar.currentDate[2]),calendar.source);
		 }
		 trRow = tbBoard.insertRow(2);
		 var cnDateName = new Array(&quot;日&quot;,&quot;一&quot;,&quot;二&quot;,&quot;三&quot;,&quot;四&quot;,&quot;五&quot;,&quot;六&quot;);
		 for (var i = 0; i &lt; 7; i++) {
			 tbCell=trRow.insertCell(i)
			 tbCell.innerText=cnDateName[i];
			 tbCell.align=&quot;center&quot;;
			 tbCell.width=35;
			 tbCell.style.cssText=&quot;cursor:default;border:1 solid #99CCCC;background-color:#99CCCC;&quot;;
		 }
		 /*********** Calendar Body ***************/
		 trRow = tbBoard.insertRow(3);
		 tbCell=trRow.insertCell(0);
		 tbCell.colSpan=7;
		 tbCell.height=97;
		 tbCell.vAlign=&quot;top&quot;;
		 tbCell.bgColor=&quot;#F0F0F0&quot;;
		 
		 var tbBody=document.createElement(&quot;table&quot;);
		 tbCell.insertAdjacentElement(&quot;beforeEnd&quot;,tbBody);
		 tbBody.style.cssText=&quot;position:relative;top:0;left:0;width:245;height:103;font-size:9pt;&quot;
		 tbBody.cellPadding=0;
		 tbBody.cellSpacing=1;
		 calendar.body=tbBody;
	
		 /*********** Time Body ***************/
		 trRow = tbBoard.insertRow(4);
		 tbCell=trRow.insertCell(0);
		 calendar.prevHours = calendar.insertTbCell(trRow,0,&quot;-&quot;,&quot;center&quot;);
		 calendar.prevHours.title=&quot;小时调整 快捷键:Home&quot;;
		 calendar.prevHours.onmousedown=function(){
		calendar.currentDate[3]--;
		if(calendar.currentDate[3]==-1) calendar.currentDate[3]=23;
		calendar.bottom.innerText=calendar.formatTime(calendar.currentDate[3])+&quot;:&quot;+calendar.formatTime(calendar.currentDate[4]);
	}
		 tbCell=trRow.insertCell(1);
		 calendar.nextHours = calendar.insertTbCell(trRow,1,&quot;+&quot;,&quot;center&quot;);
		 calendar.nextHours.title=&quot;小时调整 快捷键:End&quot;;
		 calendar.nextHours.onmousedown=function(){
		calendar.currentDate[3]++;
		if(calendar.currentDate[3]==24) calendar.currentDate[3]=0;
		calendar.bottom.innerText=calendar.formatTime(calendar.currentDate[3])+&quot;:&quot;+calendar.formatTime(calendar.currentDate[4]);
	}
		 tbCell=trRow.insertCell(2);
		 tbCell.colSpan=3;
		 tbCell.bgColor=&quot;#99CCFF&quot;;
		 tbCell.align=&quot;center&quot;;
		 tbCell.style.cssText = &quot;cursor:default&quot;;
		 calendar.bottom=tbCell;
		 tbCell=trRow.insertCell(3);
		 calendar.prevMinutes = calendar.insertTbCell(trRow,3,&quot;-&quot;,&quot;center&quot;);
		 calendar.prevMinutes.title=&quot;分钟调整 快捷键:PageUp&quot;;
		 calendar.prevMinutes.onmousedown=function(){
		calendar.currentDate[4]--;
		if(calendar.currentDate[4]==-1) calendar.currentDate[4]=59;
		calendar.bottom.innerText=calendar.formatTime(calendar.currentDate[3])+&quot;:&quot;+calendar.formatTime(calendar.currentDate[4]);
	}
		 tbCell=trRow.insertCell(4);
		 calendar.nextMinutes = calendar.insertTbCell(trRow,4,&quot;+&quot;,&quot;center&quot;);
		 calendar.nextMinutes.title=&quot;分钟调整 快捷键:PageDown&quot;;
		 calendar.nextMinutes.onmousedown=function(){
		calendar.currentDate[4]++;
		if(calendar.currentDate[4]==60) calendar.currentDate[4]=0;
		calendar.bottom.innerText=calendar.formatTime(calendar.currentDate[3])+&quot;:&quot;+calendar.formatTime(calendar.currentDate[4]);
	}
}
	 
/************** 加入功能按钮公共样式 *********************/
	 this.insertTbCell=function(trRow,cellIndex,TXT,trAlign,tbColSpan){
		 var tbCell=trRow.insertCell(cellIndex);
		 if(tbColSpan!=undefined) tbCell.colSpan=tbColSpan;
		 var btnCell=document.createElement(&quot;button&quot;);
		 tbCell.insertAdjacentElement(&quot;beforeEnd&quot;,btnCell);
		 btnCell.value=TXT;
		 btnCell.style.cssText=&quot;width:100%;border:1 outset;background-color:buttonface;&quot;;
		 btnCell.onmouseover=function(){
		 btnCell.style.cssText=&quot;width:100%;border:1 outset;background-color:#F0F0F0;&quot;;
		 }
		 btnCell.onmouseout=function(){
			 btnCell.style.cssText=&quot;width:100%;border:1 outset;background-color:buttonface;&quot;;
		 }
	 // btnCell.onmousedown=function(){
	 //	 btnCell.style.cssText=&quot;width:100%;border:1 inset;background-color:#F0F0F0;&quot;;
	 // }
		 btnCell.onmouseup=function(){
			 btnCell.style.cssText=&quot;width:100%;border:1 outset;background-color:#F0F0F0;&quot;;
		 }
		 btnCell.onclick=function(){
			 btnCell.blur();
		 }
		 return btnCell;
	 }
	 
	 this.setDefaultDate=function(){
		 var dftDate=new Date();
		 calendar.today[0]=dftDate.getYear();
		 calendar.today[1]=dftDate.getMonth()+1;
		 calendar.today[2]=dftDate.getDate();
		 calendar.today[3]=dftDate.getHours();
		 calendar.today[4]=dftDate.getMinutes();
	 }
	 /****************** Show Calendar *********************/
	 this.show=function(targetObject,returnTime,defaultDate,sourceObject){
		 if(targetObject==undefined) {
			 alert(&quot;未设置目标对象. \n方法: ATCALENDAR.show(obj 目标对象,boolean 是否返回时间,string 默认日期,obj 点击对象);\n\n目标对象:接受日期返回值的对象.\n默认日期:格式为\&quot;yyyy-mm-dd\&quot;,缺省为当前日期.\n点击对象:点击这个对象弹出calendar,默认为目标对象.\n&quot;);
			 return false;
		 }
		 else calendar.target=targetObject;
		 
		 if(sourceObject==undefined) calendar.source=calendar.target;
		 else calendar.source=sourceObject;
		 if(returnTime) calendar.returnTime=true;
		 else calendar.returnTime=false;
		 var firstDay;
		 var Cells=new Array();
		 if((defaultDate==undefined) || (defaultDate==&quot;&quot;)){
			 var theDate=new Array();
			 calendar.head.innerText = calendar.today[0]+&quot;-&quot;+calendar.formatTime(calendar.today[1])+&quot;-&quot;+calendar.formatTime(calendar.today[2]);
			 calendar.bottom.innerText = calendar.formatTime(calendar.today[3])+&quot;:&quot;+calendar.formatTime(calendar.today[4]);
	
			 theDate[0]=calendar.today[0]; theDate[1]=calendar.today[1]; theDate[2]=calendar.today[2];
	theDate[3]=calendar.today[3]; theDate[4]=calendar.today[4];
		 }
		 else{
			 var Datereg=/^\d{4}-\d{1,2}-\d{2}&#36;/
			 var DateTimereg=/^(\d{1,4})-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2})&#36;/
			 if((!defaultDate.match(Datereg)) &amp;&amp; (!defaultDate.match(DateTimereg))){
				 alert(&quot;默认日期(时间)的格式不正确！\t\n\n默认可接受格式为:\n1、yyyy-mm-dd \n2、yyyy-mm-dd hh:mm\n3、(空)&quot;);
	 calendar.setDefaultDate();
				 return;
			 }
	
	if(defaultDate.match(Datereg)) defaultDate=defaultDate+&quot; &quot;+calendar.today[3]+&quot;:&quot;+calendar.today[4];
	var strDateTime=defaultDate.match(DateTimereg);
	var theDate=new Array(4)
	theDate[0]=strDateTime[1];
	theDate[1]=strDateTime[2];
	theDate[2]=strDateTime[3];
	theDate[3]=strDateTime[4];
	theDate[4]=strDateTime[5];
			 calendar.head.innerText = theDate[0]+&quot;-&quot;+calendar.formatTime(theDate[1])+&quot;-&quot;+calendar.formatTime(theDate[2]);
			 calendar.bottom.innerText = calendar.formatTime(theDate[3])+&quot;:&quot;+calendar.formatTime(theDate[4]);
	}
		 calendar.currentDate[0]=theDate[0];
		 calendar.currentDate[1]=theDate[1];
		 calendar.currentDate[2]=theDate[2];
		 calendar.currentDate[3]=theDate[3];
		 calendar.currentDate[4]=theDate[4];
		 
		 theFirstDay=calendar.getFirstDay(theDate[0],theDate[1]);
		 theMonthLen=theFirstDay+calendar.getMonthLen(theDate[0],theDate[1]);
		 //calendar.setEventKey();
		 calendar.calendarPad.style.display=&quot;&quot;;
		 var theRows = Math.ceil((theMonthLen)/7);
		 //清除旧的日历;
		 while (calendar.body.rows.length &gt; 0) {
			 calendar.body.deleteRow(0)
		 }
		 //建立新的日历;
		 var n=0;day=0;
		 for(i=0;i&lt;theRows;i++){
			 theRow=calendar.body.insertRow(i);
			 for(j=0;j&lt;7;j++){
				 n++;
				 if(n&gt;theFirstDay &amp;&amp; n&lt;=theMonthLen){
					 day=n-theFirstDay;
					 calendar.insertBodyCell(theRow,j,day);
				 }
				 else{
					 var theCell=theRow.insertCell(j);
					 theCell.style.cssText=&quot;background-color:#F0F0F0;cursor:default;&quot;;
				 }
			 }
		 }
		 //****************调整日历位置**************//
		 var offsetPos=calendar.getAbsolutePos(calendar.source);//计算对象的位置;
		 if((document.body.offsetHeight-(offsetPos.y+calendar.source.offsetHeight-document.body.scrollTop))&lt;calendar.calendarPad.style.pixelHeight){
			 var calTop=offsetPos.y-calendar.calendarPad.style.pixelHeight;
		 }
		 else{
			 var calTop=offsetPos.y+calendar.source.offsetHeight;
		 }
		 if((document.body.offsetWidth-(offsetPos.x+calendar.source.offsetWidth-document.body.scrollLeft))&gt;calendar.calendarPad.style.pixelWidth){
			 var calLeft=offsetPos.x;
		 }
		 else{
			 var calLeft=calendar.source.offsetLeft+calendar.source.offsetWidth;
		 }
		 //alert(offsetPos.x);
		 calendar.calendarPad.style.pixelLeft=calLeft;
		 calendar.calendarPad.style.pixelTop=calTop;
	 }
	 /****************** 计算对象的位置 *************************/
	 this.getAbsolutePos = function(el) {
		 var r = { x: el.offsetLeft, y: el.offsetTop };
		 if (el.offsetParent) {
			 var tmp = calendar.getAbsolutePos(el.offsetParent);
			 r.x += tmp.x;
			 r.y += tmp.y;
		 }
		 return r;
	 };
	 //************* 插入日期单元格 **************/
	 this.insertBodyCell=function(theRow,j,day,targetObject){
		 var theCell=theRow.insertCell(j);
		 if(j==0) var theBgColor=&quot;#FF9999&quot;;
		 else var theBgColor=&quot;#FFFFFF&quot;;
		 if(day==calendar.currentDate[2]) var theBgColor=&quot;#CCCCCC&quot;;
		 if(day==calendar.today[2]) var theBgColor=&quot;#99FFCC&quot;;
		 theCell.bgColor=theBgColor;
		 theCell.innerText=day;
		 theCell.align=&quot;center&quot;;
		 theCell.width=35;
		 theCell.style.cssText=&quot;border:1 solid #CCCCCC;cursor:hand;&quot;;
		 theCell.onmouseover=function(){ 
			 theCell.bgColor=&quot;#FFFFCC&quot;; 
			 theCell.style.cssText=&quot;border:1 outset;cursor:hand;&quot;;
		 }
		 theCell.onmouseout=function(){ 
			 theCell.bgColor=theBgColor; 
			 theCell.style.cssText=&quot;border:1 solid #CCCCCC;cursor:hand;&quot;;
		 }
		 theCell.onmousedown=function(){ 
			 theCell.bgColor=&quot;#FFFFCC&quot;; 
			 theCell.style.cssText=&quot;border:1 inset;cursor:hand;&quot;;
		 }
		 theCell.onclick=function(){
	 if(calendar.returnTime)	 
				 calendar.sltDate=calendar.currentDate[0]+&quot;-&quot;+calendar.formatTime(calendar.currentDate[1])+&quot;-&quot;+calendar.formatTime(day)+&quot; &quot;+calendar.formatTime(calendar.currentDate[3])+&quot;:&quot;+calendar.formatTime(calendar.currentDate[4])
	 else
				 calendar.sltDate=calendar.currentDate[0]+&quot;-&quot;+calendar.formatTime(calendar.currentDate[1])+&quot;-&quot;+calendar.formatTime(day);
			 calendar.target.value=calendar.sltDate;
			 calendar.hide();
		 }
	 }
	 /************** 取得月份的第一天为星期几 *********************/
	 this.getFirstDay=function(theYear, theMonth){
		 var firstDate = new Date(theYear,theMonth-1,1);
		 return firstDate.getDay();
	 }
	 /************** 取得月份共有几天 *********************/
	 this.getMonthLen=function(theYear, theMonth) {
		 theMonth--;
		 var oneDay = 1000 * 60 * 60 * 24;
		 var thisMonth = new Date(theYear, theMonth, 1);
		 var nextMonth = new Date(theYear, theMonth + 1, 1);
		 var len = Math.ceil((nextMonth.getTime() - thisMonth.getTime())/oneDay);
		 return len;
	 }
	 /************** 隐藏日历 *********************/
	 this.hide=function(){
		 //calendar.clearEventKey();
		 calendar.calendarPad.style.display=&quot;none&quot;;
		 
	 }
	 /************** 从这里开始 *********************/
	 this.setup=function(defaultDate){
		 calendar.addCalendarPad();
		 calendar.addCalendarBoard();
		 calendar.setDefaultDate();
	 }
	 /************** 格式化时间 *********************/
	this.formatTime = function(str) {
	 str = (&quot;00&quot;+str);
	 return str.substr(str.length-2);
	}
/************** 关于AgetimeCalendar *********************/
	 this.about=function(){
		 var strAbout = &quot;\nWeb 日历选择输入控件操作说明:\n\n&quot;;
		 strAbout+=&quot;-\t: 关于\n&quot;;
		 strAbout+=&quot;x\t: 隐藏\n&quot;;
		 strAbout+=&quot;&lt;&lt;\t: 上一年\n&quot;;
		 strAbout+=&quot;&lt;\t: 上一月\n&quot;;
		 strAbout+=&quot;今日\t: 返回当天日期\n&quot;;
		 strAbout+=&quot;&gt;\t: 下一月\n&quot;;
		 strAbout+=&quot;&lt;&lt;\t: 下一年\n&quot;;
		 strAbout+=&quot;\nWeb日历选择输入控件\tVer:v1.0\t\nDesigned By:wxb \t\t2004.11.22\t\n&quot;;
		 alert(strAbout);
	 }
	 
document.onkeydown=function(){
	if(calendar.calendarPad.style.display==&quot;none&quot;){
		window.event.returnValue= true;
		return true ;
	}
	switch(window.event.keyCode){
		case 27 : calendar.hide(); break; //ESC
		case 37 : calendar.prevMonth.onmousedown(); break;//&larr;
		case 38 : calendar.prevYear.onmousedown();break; //&uarr;
		case 39 : calendar.nextMonth.onmousedown(); break;//&rarr;
		case 40 : calendar.nextYear.onmousedown(); break;//&darr;
		case 84 : calendar.goToday.onclick(); break;//T
		case 88 : calendar.hide(); break;		 //X
		case 72 : calendar.about(); break;		 //H	
		case 36 : calendar.prevHours.onmousedown(); break;//Home
		case 35 : calendar.nextHours.onmousedown(); break;//End
		case 33 : calendar.prevMinutes.onmousedown();break; //PageUp
		case 34 : calendar.nextMinutes.onmousedown(); break;//PageDown
		} 
		window.event.keyCode = 0;
		window.event.returnValue= false;
		}
	 calendar.setup();
	}
	 
var CalendarWebControl = new atCalendarControl();
&lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/62/</link>
<category domain="http://www.blackliu.com/art/cat/3/"><![CDATA[脚本应用]]></category>
<pubDate>Fri, 03 Jul 2009 23:40:23 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/61/</guid>
<title><![CDATA[漂亮的脚本日历]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;Script LANGUAGE=&quot;JavaScript&quot;&gt;
	var months = new Array(&quot;一&quot;, &quot;二&quot;, &quot;三&quot;,&quot;四&quot;, &quot;五&quot;, &quot;六&quot;, &quot;七&quot;, &quot;八&quot;, &quot;九&quot;,&quot;十&quot;, &quot;十一&quot;, &quot;十二&quot;);
	var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31,30, 31, 30, 31);
	var days = new Array(&quot;日&quot;,&quot;一&quot;, &quot;二&quot;, &quot;三&quot;,&quot;四&quot;, &quot;五&quot;, &quot;六&quot;);
	var classTemp;
	var today=new getToday();
	var year=today.year;
	var month=today.month;
	var newCal;
	function getDays(month, year) {
	 if (1 == month) return ((0 == year % 4) &amp;&amp; (0 != (year % 100))) ||(0 == year % 400) ? 29 : 28;
	 else return daysInMonth[month];
	}
	function getToday() {
	 this.now = new Date();
	 this.year = this.now.getFullYear();
	 this.month = this.now.getMonth();
	 this.day = this.now.getDate();
	}
	function Calendar() {
	 newCal = new Date(year,month,1);
	 today = new getToday();		 
	 var day = -1;
	 var startDay = newCal.getDay();
	 var endDay=getDays(newCal.getMonth(), newCal.getFullYear());
	 var daily = 0;
	 if ((today.year == newCal.getFullYear()) &amp;&amp;(today.month == newCal.getMonth()))
	 {
		 day = today.day;
	 }
	 var caltable = document.all.caltable.tBodies.calendar;
	 var intDaysInMonth =getDays(newCal.getMonth(), newCal.getFullYear());
	 for (var intWeek = 0; intWeek &lt; caltable.rows.length;intWeek++)
		 for (var intDay = 0;intDay &lt; caltable.rows[intWeek].cells.length;intDay++)
		 {
			 var cell = caltable.rows[intWeek].cells[intDay];
			 var montemp=(newCal.getMonth()+1)&lt;10?(&quot;0&quot;+(newCal.getMonth()+1)):(newCal.getMonth()+1);								 
			 if ((intDay == startDay) &amp;&amp; (0 == daily)){ daily = 1;}
			 var daytemp=daily&lt;10?(&quot;0&quot;+daily):(daily);
			 var d=&quot;&lt;&quot;+newCal.getFullYear()+&quot;-&quot;+montemp+&quot;-&quot;+daytemp+&quot;&gt;&quot;;
			 if(day==daily) cell.className=&quot;DayNow&quot;;
			 else if(intDay==6) cell.className = &quot;DaySat&quot;;
			 else if (intDay==0) cell.className =&quot;DaySun&quot;;
			 else cell.className=&quot;Day&quot;;
			 if ((daily &gt; 0) &amp;&amp; (daily &lt;= intDaysInMonth))
			 {
				 cell.innerText = daily;
				 daily++;
			 } else
			 {
				 cell.className=&quot;CalendarTD&quot;;
				 cell.innerText = &quot;&quot;;
			 }
	 }
	 document.all.year.value=year;
	 document.all.month.value=month+1;
	}
	function subMonth()
	{
	 if ((month-1)&lt;0)
	 {
		 month=11;
		 year=year-1;
	 } else
	 {
		 month=month-1;
	 }
	 Calendar();
	}
	function addMonth()
	{
	 if((month+1)&gt;11)
	 {
		 month=0;
		 year=year+1;
	 } else
	 {
		 month=month+1;
	 }
	 Calendar();
	}
	function setDate() 
	{
	 if (document.all.month.value&lt;1||document.all.month.value&gt;12)
	 {
		 alert(&quot;月的有效范围在1-12之间!&quot;);
		 return;
	 }
	 year=Math.ceil(document.all.year.value);
	 month=Math.ceil(document.all.month.value-1);
	 Calendar();
	}
&lt;/Script&gt;
&lt;Script&gt;
function buttonOver()
{
	var obj = window.event.srcElement;
	obj.runtimeStyle.cssText = &quot;background-color:#FFFFFF&quot;;
// obj.className=&quot;Hover&quot;;
}
function buttonOut()
{
	var obj = window.event.srcElement;
	window.setTimeout(function(){obj.runtimeStyle.cssText = &quot;&quot;;},300);
}
&lt;/Script&gt;
&lt;Style&gt;
Input {font-family: verdana;font-size: 9pt;text-decoration: none;background-color: #FFFFFF;height: 20px;border: 1px solid #666666;color:#000000;}
.Calendar {font-family: verdana;text-decoration: none;width: 170;background-color: #C0D0E8;font-size: 9pt;border:0px dotted #1C6FA5;}
.CalendarTD {font-family: verdana;font-size: 7pt;color: #000000;background-color:#f6f6f6;height: 20px;width:11%;text-align: center;}
.Title {font-family: verdana;font-size: 11pt;font-weight: normal;height: 24px;text-align: center;color: #333333;text-decoration: none;background-color: #A4B9D7;border-top-width: 1px;border-right-width: 1px;border-bottom-width: 1px;border-left-width: 1px;border-bottom-style:1px;border-top-color: #999999;border-right-color: #999999;border-bottom-color: #999999;border-left-color: #999999;}
.Day {font-family: verdana;font-size: 7pt;color:#243F65;background-color: #E5E9F2;height: 20px;width:11%;text-align: center;}
.DaySat {font-family: verdana;font-size: 7pt;color:#FF0000;text-decoration: none;background-color:#E5E9F2;text-align: center;height: 18px;width: 12%;}
.DaySun {font-family: verdana;font-size: 7pt;color: #FF0000;text-decoration: none;background-color:#E5E9F2;text-align: center;height: 18px;width: 12%;}
.DayNow {font-family: verdana;font-size: 7pt;font-weight: bold;color: #000000;background-color: #FFFFFF;height: 20px;text-align: center;}
.DayTitle {font-family: verdana;font-size: 9pt;color: #000000;background-color: #C0D0E8;height: 20px;width:11%;text-align: center;}
.DaySatTitle {font-family: verdana;font-size: 9pt;color:#FF0000;text-decoration: none;background-color:#C0D0E8;text-align: center;height: 20px;width: 12%;}
.DaySunTitle {font-family: verdana;font-size: 9pt;color: #FF0000;text-decoration: none;background-color: #C0D0E8;text-align: center;height: 20px;width: 12%;}
.DayButton {font-family: Webdings;font-size: 9pt;font-weight: bold;color: #243F65;cursor:hand;text-decoration: none;}
&lt;/Style&gt;

&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;1&quot; class=&quot;Calendar&quot; id=&quot;caltable&quot;&gt;
&lt;thead&gt;
				 &lt;tr align=&quot;center&quot; valign=&quot;middle&quot;&gt; 
	 &lt;td colspan=&quot;7&quot; class=&quot;Title&quot;&gt;
		 &lt;a href=&quot;javaScript:subMonth();&quot; title=&quot;上一月&quot; Class=&quot;DayButton&quot;&gt;3&lt;/a&gt; &lt;input name=&quot;year&quot; type=&quot;text&quot; size=&quot;4&quot; maxlength=&quot;4&quot; onKeyDown=&quot;if (event.keyCode==13)&quot; onKeyUp=&quot;this.value=this.value.replace(/[^0-9]/g,'')&quot;	 onpaste=&quot;this.value=this.value.replace(/[^0-9]/g,'')&quot;&gt; 年 &lt;input name=&quot;month&quot; type=&quot;text&quot; size=&quot;1&quot; maxlength=&quot;2&quot; onKeyDown=&quot;if (event.keyCode==13)&quot; onKeyUp=&quot;this.value=this.value.replace(/[^0-9]/g,'')&quot;	 onpaste=&quot;this.value=this.value.replace(/[^0-9]/g,'')&quot;&gt; 月 &lt;a href=&quot;JavaScript:addMonth();&quot; title=&quot;下一月&quot; Class=&quot;DayButton&quot;&gt;4&lt;/a&gt;
	 &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr align=&quot;center&quot; valign=&quot;middle&quot;&gt; 
	 &lt;Script LANGUAGE=&quot;JavaScript&quot;&gt;	 
		 document.write(&quot;&lt;TD class=DaySunTitle id=diary &gt;&quot; + days[0] + &quot;&lt;/TD&gt;&quot;); 
		 for (var intLoop = 1; intLoop &lt; days.length-1;intLoop++) 
			 document.write(&quot;&lt;TD class=DayTitle id=diary&gt;&quot; + days[intLoop] + &quot;&lt;/TD&gt;&quot;); 
			 document.write(&quot;&lt;TD class=DaySatTitle id=diary&gt;&quot; + days[intLoop] + &quot;&lt;/TD&gt;&quot;); 
	 &lt;/Script&gt;
	&lt;/TR&gt; 
&lt;/thead&gt;
&lt;TBODY border=1 cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; ID=&quot;calendar&quot; ALIGN=CENTER ONCLICK=&quot;getDiary()&quot;&gt;
	&lt;Script LANGUAGE=&quot;JavaScript&quot;&gt;
	 for (var intWeeks = 0; intWeeks &lt; 6; intWeeks++)
	 {
		 document.write(&quot;&lt;TR style='cursor:hand'&gt;&quot;);
		 for (var intDays = 0; intDays &lt; days.length;intDays++) document.write(&quot;&lt;TD class=CalendarTD onMouseover='buttonOver();' onMouseOut='buttonOut();'&gt;&lt;/TD&gt;&quot;);
		 document.write(&quot;&lt;/TR&gt;&quot;);
	 } 
	&lt;/Script&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;Script	 LANGUAGE=&quot;JavaScript&quot;&gt;
	Calendar();
&lt;/Script&gt;</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/61/</link>
<category domain="http://www.blackliu.com/art/cat/3/"><![CDATA[脚本应用]]></category>
<pubDate>Fri, 03 Jul 2009 23:34:01 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/60/</guid>
<title><![CDATA[实时变化的时间特效]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;script language=JavaScript&gt;
var timerID = null;
var timerRunning = false;
function stopclock (){
if(timerRunning)
clearTimeout(timerID);
timerRunning = false;}
function startclock () {
stopclock();
showtime();}
function showtime () {
var now = new Date();
var hours = now.getHours();
var minutes = now.getMinutes();
var seconds = now.getSeconds()
var timeValue = &quot;&quot; +((hours &gt;= 12) ? &quot;下午 &quot; : &quot;上午 &quot; )
timeValue += ((hours &gt;12) ? hours -12 :hours)
timeValue += ((minutes &lt; 10) ? &quot;:0&quot; : &quot;:&quot;) + minutes
timeValue += ((seconds &lt; 10) ? &quot;:0&quot; : &quot;:&quot;) + seconds
document.clock.thetime.value = timeValue;
timerID = setTimeout(&quot;showtime()&quot;,1000);
timerRunning = true;}
&lt;/SCRIPT&gt;
&lt;body onload=startclock()&gt;
&lt;form name=clock &gt;
&lt;input name=thetime style=&quot;font-size: 9pt;color:#000000;border:0&quot; size=12&gt;
&lt;/form&gt;
&lt;/body&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/60/</link>
<category domain="http://www.blackliu.com/art/cat/3/"><![CDATA[脚本应用]]></category>
<pubDate>Fri, 03 Jul 2009 23:32:26 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/59/</guid>
<title><![CDATA[1900-2100 两百年超酷百年日历]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0 Transitional//EN&quot;&gt;
&lt;!-- saved from url=(0035)http://www.caiqing.net/calendar.htm --&gt;
&lt;HTML&gt;&lt;HEAD&gt;&lt;TITLE&gt;1900-2100 两百年超酷百年日历&lt;/TITLE&gt;
&lt;SCRIPT language=JavaScript&gt;
function click() {
if (event.button==2) {alert('祝大家天天快乐！') }}
document.onmousedown=click
&lt;/SCRIPT&gt;
&lt;META http-equiv=content-type content=&quot;text/html; charset=gb2312&quot;&gt;&lt;!-- ********************************************
两百年国历与农历程式 (IE版)
************************************************** --&gt;
&lt;META 
content=&quot;时间; JavaScript 日历;世界时间; 农历; 阳历; 阴历; 节日; 时区; 节气; 干支; 生肖; world time clock; gregorian solar; chinese lunar; calendar;&quot; 
name=keywords&gt;
&lt;META content=All name=robots&gt;
&lt;META content=&quot;Gregorian Solar Calendar and Chinese Lunar Calendar&quot; 
name=description&gt;
&lt;META 
content=&quot;Shareware, Software, Freeware, Anti-virus, Browser, Browsers, Compression, Editor , Editors, Email, FTP, News Readers, IRC, Telnet, Screen Savers, Anti Virus, Windows, Utilities, Download, Plugin, Plug-in, Plugins, Plug-ins, Winsock, 32-bit, 32bit, Graphics, Multimedia, Telnet, VRML, Authoring&quot; 
name=keywords&gt;
&lt;META 
content=&quot;software, free software, freeware, shareware, free software download, software download, internet, webmaster software, html software, meta tags, meta, meta tag tutorial&quot; 
name=DESCRIPTION&gt;
&lt;META 
content=&quot;mail, newsletter, news, download, free, freeware, shareware, software, Windows 98, Windows 95, Windows, Windows NT, Win95, Win98, WinNT, computer, PC, newsletter, Internet, ezine, e-zine, 32-bit, 32bit, MIDI, fonts, themes, patches, update, driver, driver&quot; 
name=KEYWORDS&gt;
&lt;META content=General name=RATING&gt;
&lt;META content=ALL name=ROBOTS&gt;
&lt;META content=1 name=REVISIT&gt;
&lt;META content=0 name=expires&gt;
&lt;META content=no-cache name=Pragma&gt;
&lt;META content=no-cache name=Cache-Control&gt;
&lt;SCRIPT language=JScript&gt;
&lt;!--
/*****************************************************************************
																																		 个人偏好设定
*****************************************************************************/
var conWeekend = 3;	 // 周末颜色显示: 1=黑色, 2=绿色, 3=红色, 4=隔周休

/*****************************************************************************
																																		 日期资料
*****************************************************************************/
var lunarInfo=new Array(
0x4bd8,0x4ae0,0xa570,0x54d5,0xd260,0xd950,0x5554,0x56af,0x9ad0,0x55d2,
0x4ae0,0xa5b6,0xa4d0,0xd250,0xd255,0xb54f,0xd6a0,0xada2,0x95b0,0x4977,
0x497f,0xa4b0,0xb4b5,0x6a50,0x6d40,0xab54,0x2b6f,0x9570,0x52f2,0x4970,
0x6566,0xd4a0,0xea50,0x6a95,0x5adf,0x2b60,0x86e3,0x92ef,0xc8d7,0xc95f,
0xd4a0,0xd8a6,0xb55f,0x56a0,0xa5b4,0x25df,0x92d0,0xd2b2,0xa950,0xb557,
0x6ca0,0xb550,0x5355,0x4daf,0xa5b0,0x4573,0x52bf,0xa9a8,0xe950,0x6aa0,
0xaea6,0xab50,0x4b60,0xaae4,0xa570,0x5260,0xf263,0xd950,0x5b57,0x56a0,
0x96d0,0x4dd5,0x4ad0,0xa4d0,0xd4d4,0xd250,0xd558,0xb540,0xb6a0,0x95a6,
0x95bf,0x49b0,0xa974,0xa4b0,0xb27a,0x6a50,0x6d40,0xaf46,0xab60,0x9570,
0x4af5,0x4970,0x64b0,0x74a3,0xea50,0x6b58,0x5ac0,0xab60,0x96d5,0x92e0,
0xc960,0xd954,0xd4a0,0xda50,0x7552,0x56a0,0xabb7,0x25d0,0x92d0,0xcab5,
0xa950,0xb4a0,0xbaa4,0xad50,0x55d9,0x4ba0,0xa5b0,0x5176,0x52bf,0xa930,
0x7954,0x6aa0,0xad50,0x5b52,0x4b60,0xa6e6,0xa4e0,0xd260,0xea65,0xd530,
0x5aa0,0x76a3,0x96d0,0x4afb,0x4ad0,0xa4d0,0xd0b6,0xd25f,0xd520,0xdd45,
0xb5a0,0x56d0,0x55b2,0x49b0,0xa577,0xa4b0,0xaa50,0xb255,0x6d2f,0xada0,
0x4b63,0x937f,0x49f8,0x4970,0x64b0,0x68a6,0xea5f,0x6b20,0xa6c4,0xaaef,
0x92e0,0xd2e3,0xc960,0xd557,0xd4a0,0xda50,0x5d55,0x56a0,0xa6d0,0x55d4,
0x52d0,0xa9b8,0xa950,0xb4a0,0xb6a6,0xad50,0x55a0,0xaba4,0xa5b0,0x52b0,
0xb273,0x6930,0x7337,0x6aa0,0xad50,0x4b55,0x4b6f,0xa570,0x54e4,0xd260,
0xe968,0xd520,0xdaa0,0x6aa6,0x56df,0x4ae0,0xa9d4,0xa4d0,0xd150,0xf252,
0xd520);
var solarMonth=new Array(31,28,31,30,31,30,31,31,30,31,30,31);
var Gan=new Array(&quot;甲&quot;,&quot;乙&quot;,&quot;丙&quot;,&quot;丁&quot;,&quot;戊&quot;,&quot;己&quot;,&quot;庚&quot;,&quot;辛&quot;,&quot;壬&quot;,&quot;癸&quot;);
var Zhi=new Array(&quot;子&quot;,&quot;丑&quot;,&quot;寅&quot;,&quot;卯&quot;,&quot;辰&quot;,&quot;巳&quot;,&quot;午&quot;,&quot;未&quot;,&quot;申&quot;,&quot;酉&quot;,&quot;戌&quot;,&quot;亥&quot;);
var Animals=new Array(&quot;鼠&quot;,&quot;牛&quot;,&quot;虎&quot;,&quot;兔&quot;,&quot;龙&quot;,&quot;蛇&quot;,&quot;马&quot;,&quot;羊&quot;,&quot;猴&quot;,&quot;鸡&quot;,&quot;狗&quot;,&quot;猪&quot;);
var solarTerm = new Array(&quot;小寒&quot;,&quot;大寒&quot;,&quot;立春&quot;,&quot;雨水&quot;,&quot;惊蛰&quot;,&quot;春分&quot;,&quot;清明&quot;,&quot;谷雨&quot;,&quot;立夏&quot;,&quot;小满&quot;,&quot;芒种&quot;,&quot;夏至&quot;,&quot;小暑&quot;,&quot;大暑&quot;,&quot;立秋&quot;,&quot;处暑&quot;,&quot;白露&quot;,&quot;秋分&quot;,&quot;寒露&quot;,&quot;霜降&quot;,&quot;立冬&quot;,&quot;小雪&quot;,&quot;大雪&quot;,&quot;冬至&quot;);
var sTermInfo = new Array(0,21208,42467,63836,85337,107014,128867,150921,173149,195551,218072,240693,263343,285989,308563,331033,353350,375494,397447,419210,440795,462224,483532,504758);
var nStr1 = new Array('日','一','二','三','四','五','六','七','八','九','十');
var nStr2 = new Array('初','十','廿','卅','□');
var monthName = new Array(&quot;JAN&quot;,&quot;FEB&quot;,&quot;MAR&quot;,&quot;APR&quot;,&quot;MAY&quot;,&quot;JUN&quot;,&quot;JUL&quot;,&quot;AUG&quot;,&quot;SEP&quot;,&quot;OCT&quot;,&quot;NOV&quot;,&quot;DEC&quot;);
//公历节日 *表示放假日
var sFtv = new Array(
&quot;0101*新年元旦&quot;,
&quot;0202 世界湿地日&quot;,
&quot;0207 国际声援南非日&quot;,
&quot;0210 国际气象节&quot;,
&quot;0214 情人节&quot;,
&quot;0301 国际海豹日&quot;,
&quot;0303 全国爱耳日&quot;,
&quot;0308 国际妇女节&quot;,
&quot;0312 植树节 孙中山逝世纪念日&quot;,
&quot;0314 国际警察日&quot;,
&quot;0315 国际消费者权益日&quot;,
&quot;0317 中国国医节 国际航海日&quot;,
&quot;0321 世界森林日 消除种族歧视国际日&quot;,
&quot;0321 世界儿歌日&quot;,
&quot;0322 世界水日&quot;,
&quot;0323 世界气象日&quot;,
&quot;0324 世界防治结核病日&quot;,
&quot;0325 全国中小学生安全教育日&quot;,
&quot;0330 巴勒斯坦国土日&quot;,
&quot;0401 愚人节 全国爱国卫生运动月(四月) 税收宣传月(四月)&quot;,
&quot;0407 世界卫生日&quot;,
&quot;0422 世界地球日&quot;,
&quot;0423 世界图书和版权日&quot;,
&quot;0424 亚非新闻工作者日&quot;,
&quot;0501 国际劳动节&quot;,
&quot;0504 中国五四青年节&quot;,
&quot;0505 碘缺乏病防治日&quot;,
&quot;0508 世界红十字日&quot;,
&quot;0512 国际护士节&quot;,
&quot;0515 国际家庭日&quot;,
&quot;0517 世界电信日&quot;,
&quot;0518 国际博物馆日&quot;,
&quot;0520 全国学生营养日&quot;,
&quot;0523 国际牛奶日&quot;,
&quot;0531 世界无烟日&quot;, 
&quot;0601 国际儿童节&quot;,
&quot;0605 世界环境日&quot;,
&quot;0606 全国爱眼日&quot;,
&quot;0617 防治荒漠化和干旱日&quot;,
&quot;0623 国际奥林匹克日&quot;,
&quot;0625 全国土地日&quot;,
&quot;0626 国际反毒品日&quot;,
&quot;0701 中国共产党建党日 世界建筑日&quot;,
&quot;0702 国际体育记者日 精品推介站(http://www.21softs.com/)正式对外开放纪念日&quot;,
&quot;0707 中国人民抗日战争纪念日&quot;,
&quot;0711 世界人口日&quot;,
&quot;0730 非洲妇女日&quot;,
&quot;0801 中国建军节&quot;,
&quot;0808 中国男子节(爸爸节)&quot;,
&quot;0815 日本正式宣布无条件投降日&quot;,
&quot;0908 国际扫盲日 国际新闻工作者日&quot;,
&quot;0910 教师节&quot;,
&quot;0914 世界清洁地球日 梅竹松 生日^o^&quot;,
&quot;0916 国际臭氧层保护日&quot;,
&quot;0918 九&middot;一八事变纪念日&quot;,
&quot;0920 国际爱牙日&quot;,
&quot;0927 世界旅游日&quot;,
&quot;1001*国庆节 世界音乐日 国际老人节&quot;,
&quot;1001 国际音乐日&quot;,
&quot;1002 国际和平与民主自由斗争日&quot;,
&quot;1004 世界动物日&quot;,
&quot;1008 全国高血压日&quot;,
&quot;1008 世界视觉日&quot;,
&quot;1009 世界邮政日 万国邮联日&quot;,
&quot;1010 辛亥革命纪念日 世界精神卫生日&quot;,
&quot;1013 世界保健日 国际教师节&quot;,
&quot;1014 世界标准日&quot;,
&quot;1015 国际盲人节(白手杖节)&quot;,
&quot;1016 世界粮食日&quot;,
&quot;1017 世界消除贫困日&quot;,
&quot;1022 世界传统医药日&quot;,
&quot;1024 联合国日 世界发展信息日&quot;,
&quot;1031 世界勤俭日&quot;,
&quot;1107 十月社会主义革命纪念日&quot;,
&quot;1108 中国记者日&quot;,
&quot;1109 全国消防安全宣传教育日&quot;,
&quot;1110 世界青年节&quot;,
&quot;1111 国际科学与和平周(本日所属的一周)&quot;,
&quot;1112 孙中山诞辰纪念日&quot;,
&quot;1114 世界糖尿病日&quot;,
&quot;1117 国际大学生节 世界学生节&quot;,
&quot;1121 世界问候日 世界电视日&quot;,
&quot;1129 国际声援巴勒斯坦人民国际日&quot;,
&quot;1201 世界艾滋病日&quot;,
&quot;1203 世界残疾人日&quot;,
&quot;1205 国际经济和社会发展志愿人员日&quot;,
&quot;1208 国际儿童电视日&quot;,
&quot;1209 世界足球日&quot;,
&quot;1210 世界人权日&quot;,
&quot;1212 西安事变纪念日&quot;,
&quot;1213 南京大屠杀(1937年)纪念日！紧记血泪史！&quot;,
&quot;1221 国际篮球日&quot;,
&quot;1224 平安夜&quot;,
&quot;1225 圣诞节&quot;,
&quot;1229 国际生物多样性日&quot;);
//某月的第几个星期几。 5,6,7,8 表示到数第 1,2,3,4 个星期几
var wFtv = new Array(
&quot;0110 黑人日&quot;,
&quot;0150 世界麻风日&quot;, //一月的最后一个星期日（月倒数第一个星期日）
&quot;0520 国际母亲节&quot;,
&quot;0530 全国助残日&quot;,
&quot;0630 父亲节&quot;,
&quot;0911 劳动节&quot;,
&quot;0932 国际和平日&quot;,
&quot;0940 国际聋人节 世界儿童日&quot;,
&quot;0950 世界海事日&quot;,
&quot;1011 国际住房日&quot;,
&quot;1013 国际减轻自然灾害日(减灾日)&quot;,
&quot;1144 感恩节&quot;);
//农历节日
var lFtv = new Array(
&quot;0101*春节&quot;,
&quot;0115 元宵节&quot;,
&quot;0202 龙抬头节&quot;,
&quot;0323 妈祖生辰 (天上圣母诞辰)&quot;,
&quot;0505 端午节&quot;,
&quot;0707 七七中国情人节&quot;,
&quot;0815 中秋节&quot;,
&quot;0909 重阳节&quot;,
&quot;1208 腊八节&quot;,
&quot;1223 腊八节&quot;,
&quot;0100*除夕&quot;);
//世界时间资料
var timeData = {
&quot;Asia														 亚洲&quot;: {		 //----------------------------------------------
&quot;Brunei												 文莱			 &quot;:[&quot;+0800&quot;,&quot;&quot;,&quot;斯里巴加湾市&quot;],
&quot;Burma													 缅甸			 &quot;:[&quot;+0630&quot;,&quot;&quot;,&quot;仰光&quot;],
&quot;Cambodia										 柬埔寨	 &quot;:[&quot;+0700&quot;,&quot;&quot;,&quot;金边&quot;],
&quot;China													 中国			 &quot;:[&quot;+0800&quot;,&quot;&quot;,&quot;北京、重庆、上海、天津&quot;],
&quot;Hong kong,Macau			 香港&middot;澳门&quot;:[&quot;+0800&quot;,&quot;&quot;,&quot;香港、澳门特区&quot;],
&quot;Indonesia									 印尼			 &quot;:[&quot;+0700&quot;,&quot;&quot;,&quot;雅加达&quot;],
&quot;Japan													 日本			 &quot;:[&quot;+0900&quot;,&quot;&quot;,&quot;东京、大阪、札幌&quot;],
&quot;Korea													 韩国			 &quot;:[&quot;+0900&quot;,&quot;&quot;,&quot;汉城&quot;],
&quot;Laos														 老挝			 &quot;:[&quot;+0700&quot;,&quot;&quot;,&quot;万象&quot;],
&quot;Malaysia										 马来西亚&quot;:[&quot;+0800&quot;,&quot;&quot;,&quot;吉隆坡&quot;],
&quot;Mongolia										 蒙古			 &quot;:[&quot;+0800&quot;,&quot;03L03|09L03&quot;,&quot;乌兰巴托、库伦&quot;],
&quot;Philippines							 菲律宾	 &quot;:[&quot;+0800&quot;,&quot;04F53|10F53&quot;,&quot;马尼拉&quot;],
&quot;Russia(Anadyr)				 俄罗斯	 &quot;:[&quot;+1300&quot;,&quot;03L03|10L03&quot;,&quot;阿纳德尔河&quot;],
&quot;Russia(Kamchatka)	 俄罗斯	 &quot;:[&quot;+1200&quot;,&quot;03L03|10L03&quot;,&quot;堪察加半岛&quot;],
&quot;Russia(Magadan)			 俄罗斯	 &quot;:[&quot;+1100&quot;,&quot;03L03|10L03&quot;,&quot;马加丹&quot;],
&quot;Russia(Vladivostok)俄罗斯	 &quot;:[&quot;+1000&quot;,&quot;03L03|10L03&quot;,&quot;符拉迪沃斯托克(海参崴)&quot;],
&quot;Russia(Yakutsk)			 俄罗斯	 &quot;:[&quot;+0900&quot;,&quot;03L03|10L03&quot;,&quot;雅库茨克&quot;],
&quot;Singapore									 新加坡	 &quot;:[&quot;+0800&quot;,&quot;&quot;,&quot;新加坡&quot;],
&quot;TaiPei												 中国台北&quot;:[&quot;+0800&quot;,&quot;&quot;,&quot;台北、高雄&quot;],
&quot;Thailand										 泰国			 &quot;:[&quot;+0700&quot;,&quot;&quot;,&quot;曼谷&quot;],
&quot;Urumchi											 中国乌鲁木齐&quot;:[&quot;+0700&quot;,&quot;&quot;,&quot;乌鲁木齐&quot;],
&quot;Vietnam											 越南			 &quot;:[&quot;+0700&quot;,&quot;&quot;,&quot;河内&quot;]
},
&quot;ME, India pen.				 中东、印度半岛&quot;: {		 //------------------------------------
&quot;Afghanistan							 阿富汗	 &quot;:[&quot;+0430&quot;,&quot;&quot;,&quot;喀布尔&quot;],
&quot;Arab Emirates					 阿拉伯联合酋长国&quot;:[&quot;+0400&quot;,&quot;&quot;,&quot;阿布扎比&quot;],
&quot;Bahrain											 巴林			 &quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;麦纳麦&quot;],
&quot;Bangladesh								 孟加拉	 &quot;:[&quot;+0600&quot;,&quot;&quot;,&quot;达卡&quot;],
&quot;Bhutan												 不丹			 &quot;:[&quot;+0600&quot;,&quot;&quot;,&quot;廷布&quot;],
&quot;Cyprus												 塞浦路斯&quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;尼科西亚&quot;],
&quot;Georgia											 乔治亚	 &quot;:[&quot;+0500&quot;,&quot;&quot;,&quot;第比利斯&quot;],
&quot;India													 印度			 &quot;:[&quot;+0530&quot;,&quot;&quot;,&quot;新德里、孟买、加尔各答&quot;],
&quot;Iran														 伊朗			 &quot;:[&quot;+0330&quot;,&quot;04 13|10 13&quot;,&quot;德黑兰&quot;],
&quot;Iraq														 伊拉克	 &quot;:[&quot;+0300&quot;,&quot;04 13|10 13&quot;,&quot;巴格达&quot;],
&quot;Israel												 以色列&middot;巴勒斯坦&quot;:[&quot;+0200&quot;,&quot;04F53|09F53&quot;,&quot;耶路撒冷&quot;],
&quot;Jordan												 约旦			 &quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;安曼&quot;],
&quot;Kuwait												 科威特	 &quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;科威特城&quot;],
&quot;Lebanon											 黎巴嫩	 &quot;:[&quot;+0200&quot;,&quot;03L03|10L03&quot;,&quot;贝鲁特&quot;],
&quot;Maldives										 马尔代夫&quot;:[&quot;+0500&quot;,&quot;&quot;,&quot;马累&quot;],
&quot;Nepal													 尼泊尔	 &quot;:[&quot;+0545&quot;,&quot;&quot;,&quot;加德满都&quot;],
&quot;Oman														 阿曼			 &quot;:[&quot;+0400&quot;,&quot;&quot;,&quot;马斯喀特&quot;],
&quot;Pakistan										 巴基斯坦&quot;:[&quot;+0500&quot;,&quot;&quot;,&quot;卡拉奇、伊斯兰堡&quot;],
&quot;Qatar													 卡塔尔	 &quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;多哈&quot;],
&quot;Saudi Arabia						 沙特阿拉伯&quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;利雅得&quot;],
&quot;Sri Lanka									 斯里兰卡&quot;:[&quot;+0600&quot;,&quot;&quot;,&quot;科伦坡&quot;],
&quot;Syria													 叙利亚	 &quot;:[&quot;+0200&quot;,&quot;04 13|10 13&quot;,&quot;大马士革&quot;],
&quot;Tajikistan								 塔吉克斯坦&quot;:[&quot;+0500&quot;,&quot;&quot;,&quot;杜尚别&quot;],
&quot;Turkey												 土耳其	 &quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;伊斯坦堡&quot;],
&quot;Turkmenistan						 土库曼斯坦&quot;:[&quot;+0500&quot;,&quot;&quot;,&quot;阿什哈巴德&quot;],
&quot;Uzbekistan								 乌兹别克斯坦&quot;:[&quot;+0500&quot;,&quot;&quot;,&quot;塔什干&quot;],
&quot;Yemen													 也门			 &quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;萨那&quot;]
},
&quot;North Europe						 北欧&quot;: {		 //----------------------------------------------
&quot;Denmark											 丹麦&quot;:[&quot;+0100&quot;,&quot;04F03|10L03&quot;,&quot;哥本哈根&quot;],
&quot;Finland											 芬兰&quot;:[&quot;+0200&quot;,&quot;03L01|10L01&quot;,&quot;赫尔辛基&quot;],
&quot;Iceland											 冰岛&quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;雷克雅未克&quot;],
&quot;Norwegian									 挪威&quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;奥斯陆&quot;],
&quot;Sweden												 瑞典&quot;:[&quot;+0100&quot;,&quot;03L01|10L01&quot;,&quot;斯德哥尔摩&quot;]
},
&quot;Eastern Europe				 中欧、东欧&quot;: {		 //----------------------------------------
&quot;Armenia											 亚美尼亚&quot;:[&quot;+0400&quot;,&quot;&quot;,&quot;埃里温&quot;],
&quot;Austria											 奥地利	 &quot;:[&quot;+0100&quot;,&quot;03L01|10L01&quot;,&quot;维也纳&quot;],
&quot;Azerbaijan								 阿塞拜疆&quot;:[&quot;+0400&quot;,&quot;&quot;,&quot;巴库&quot;],
&quot;Czech													 捷克			 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;布拉格&quot;],
&quot;Estonia											 爱沙尼亚&quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;塔林&quot;],
&quot;Germany											 德国			 &quot;:[&quot;+0100&quot;,&quot;03L01|10L01&quot;,&quot;柏林、波恩&quot;],
&quot;Hungarian									 匈牙利	 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;布达佩斯&quot;],
&quot;Kazakhstan(Astana) 哈萨克斯坦&quot;:[&quot;+0600&quot;,&quot;&quot;,&quot;阿斯塔纳、阿拉木图&quot;],
&quot;Kazakhstan(Aqtobe) 哈萨克斯坦&quot;:[&quot;+0500&quot;,&quot;&quot;,&quot;阿克托别&quot;],
&quot;Kazakhstan(Aqtau)	 哈萨克斯坦&quot;:[&quot;+0400&quot;,&quot;&quot;,&quot;阿克图&quot;],
&quot;Kirghizia									 吉尔吉斯&quot;:[&quot;+0500&quot;,&quot;&quot;,&quot;比斯凯克&quot;],
&quot;Latvia												 拉脱维亚&quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;里加&quot;],
&quot;Lithuania									 立陶宛	 &quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;维尔纽斯&quot;],
&quot;Moldova											 摩尔多瓦&quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;基希纳乌&quot;],
&quot;Poland												 波兰			 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;华沙&quot;],
&quot;Rumania											 罗马尼亚&quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;布加勒斯特&quot;],
&quot;Russia(Moscow)				 俄罗斯	 &quot;:[&quot;+0300&quot;,&quot;03L03|10L03&quot;,&quot;莫斯科&quot;],
&quot;Russia(Volgograd)	 俄罗斯	 &quot;:[&quot;+0300&quot;,&quot;03L03|10L03&quot;,&quot;伏尔加格勒&quot;],
&quot;Slovakia										 斯洛伐克&quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;布拉迪斯拉发&quot;],
&quot;Switzerland							 瑞士			 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;苏黎世&quot;],
&quot;Ukraine											 乌克兰	 &quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;基辅&quot;],
&quot;Ukraine(Simferopol)乌克兰	 &quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;辛菲罗波尔&quot;],
&quot;Belarus											 白俄罗斯&quot;:[&quot;+0200&quot;,&quot;03L03|10L03&quot;,&quot;明斯克&quot;]
},
&quot;Western Europe				 西欧&quot;: {		 //----------------------------------------------
&quot;Belgium											 比利时 &quot;:[&quot;+0100&quot;,&quot;03L01|10L01&quot;,&quot;布鲁塞尔&quot;],
&quot;France												 法国		 &quot;:[&quot;+0100&quot;,&quot;03L01|10L01&quot;,&quot;巴黎&quot;],
&quot;Ireland											 爱尔兰 &quot;:[&quot;+0000&quot;,&quot;03L01|10L01&quot;,&quot;都柏林&quot;],
&quot;Monaco												 摩纳哥 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;摩纳哥市&quot;],
&quot;Netherlands							 荷兰		 &quot;:[&quot;+0100&quot;,&quot;03L01|10L01&quot;,&quot;阿姆斯特丹&quot;],
&quot;Luxembourg								 卢森堡 &quot;:[&quot;+0100&quot;,&quot;03L01|10L01&quot;,&quot;卢森堡市&quot;],
&quot;United Kingdom				 英国		 &quot;:[&quot;+0000&quot;,&quot;03L01|10L01&quot;,&quot;伦敦、爱丁堡&quot;]
},
&quot;South Europe						 南欧&quot;: { //------------------------------------------------
&quot;Albania											 阿尔巴尼亚&quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;地拉那&quot;],
&quot;Bulgaria										 保加利亚&quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;索菲亚&quot;],
&quot;Greece												 希腊			 &quot;:[&quot;+0200&quot;,&quot;03L01|10L01&quot;,&quot;雅典&quot;],
&quot;Holy See										 罗马教廷&quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;梵蒂冈&quot;],
&quot;Italy													 意大利	 &quot;:[&quot;+0100&quot;,&quot;03L01|10L01&quot;,&quot;罗马&quot;],
&quot;Malta													 马耳他	 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;瓦莱塔&quot;],
&quot;Portugal										 葡萄牙	 &quot;:[&quot;+0000&quot;,&quot;03L01|10L01&quot;,&quot;里斯本&quot;],
&quot;San Marino								 圣马利诺&quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;圣马利诺&quot;],
&quot;Span														 西班牙	 &quot;:[&quot;+0100&quot;,&quot;03L01|10L01&quot;,&quot;马德里&quot;],
&quot;Slovenia										 斯洛文尼亚&quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;卢布尔雅那&quot;],
&quot;Yugoslavia								 南斯拉夫(塞尔维亚)&quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;贝尔格莱德&quot;]
},
&quot;North America					 北美洲&quot;: {		 //--------------------------------------------
&quot;Canada(NST)							 加拿大&quot;:[&quot;-0330&quot;,&quot;04F02|10L02&quot;,&quot;纽芬兰、圣约翰、古斯湾&quot;],
&quot;Canada(AST)							 加拿大&quot;:[&quot;-0400&quot;,&quot;04F02|10L02&quot;,&quot;冰河湾、Pangnirtung&quot;],
&quot;Canada(EST)							 加拿大&quot;:[&quot;-0500&quot;,&quot;04F02|10L02&quot;,&quot;蒙特罗&quot;],
&quot;Canada(CST)							 加拿大&quot;:[&quot;-0600&quot;,&quot;04F02|10L02&quot;,&quot;雷迦納、雨河鎮、Swift Current&quot;],
&quot;Canada(MST)							 加拿大&quot;:[&quot;-0700&quot;,&quot;04F02|10L02&quot;,&quot;印奴维特港湾、埃德蒙顿、道森河&quot;],
&quot;Canada(PST)							 加拿大&quot;:[&quot;-0800&quot;,&quot;04F02|10L02&quot;,&quot;温哥华&quot;],
&quot;US(Eastern)							 美国(东岸)&quot;:[&quot;-0500&quot;,&quot;04F02|10L02&quot;,&quot;华盛顿、纽约&quot;],
&quot;US(Indiana)							 美国					 &quot;:[&quot;-0500&quot;,&quot;&quot;,&quot;印第安纳&quot;],
&quot;US(Central)							 美国(中部)&quot;:[&quot;-0600&quot;,&quot;04F02|10L02&quot;,&quot;芝加哥&quot;],
&quot;US(Mountain)						 美国(山区)&quot;:[&quot;-0700&quot;,&quot;04F02|10L02&quot;,&quot;丹佛&quot;],
&quot;US(Arizona)							 美国					 &quot;:[&quot;-0700&quot;,&quot;&quot;,&quot;亚历桑那&quot;],
&quot;US(Pacific)							 美国(西岸)&quot;:[&quot;-0800&quot;,&quot;04F02|10L02&quot;,&quot;旧金山、洛杉矶&quot;],
&quot;US(Alaska)								 美国					 &quot;:[&quot;-0900&quot;,&quot;&quot;,&quot;阿拉斯加、朱诺&quot;]
},
&quot;South America					 中南美洲&quot;: {		 //------------------------------------------
&quot;Antigua &amp; Barbuda	 安提瓜岛及巴布达岛&quot;:[&quot;-0400&quot;,&quot;&quot;,&quot;圣约翰&quot;],
&quot;Argentina									 阿根廷	 &quot;:[&quot;-0300&quot;,&quot;&quot;,&quot;布宜诺斯艾利斯&quot;],
&quot;Bahamas											 巴哈马	 &quot;:[&quot;-0500&quot;,&quot;&quot;,&quot;拿骚&quot;],
&quot;Barbados										 巴巴多斯岛&quot;:[&quot;-0400&quot;,&quot;&quot;,&quot;布里奇顿(桥镇)&quot;],
&quot;Belize												 贝里斯	 &quot;:[&quot;-0600&quot;,&quot;&quot;,&quot;贝里斯&quot;],
&quot;Bolivia											 玻利维亚&quot;:[&quot;-0400&quot;,&quot;&quot;,&quot;拉巴斯&quot;],
&quot;Brazil(AST)							 巴西			 &quot;:[&quot;-0500&quot;,&quot;10F03|02L03&quot;,&quot;Porto Acre&quot;],
&quot;Brazil(EST)							 巴西			 &quot;:[&quot;-0300&quot;,&quot;10F03|02L03&quot;,&quot;巴西利亚、里约热内卢&quot;],
&quot;Brazil(FST)							 巴西			 &quot;:[&quot;-0200&quot;,&quot;10F03|02L03&quot;,&quot;诺罗纳&quot;],
&quot;Brazil(WST)							 巴西			 &quot;:[&quot;-0400&quot;,&quot;10F03|02L03&quot;,&quot;库亚巴&quot;],
&quot;Chilean											 智利			 &quot;:[&quot;-0500&quot;,&quot;10F03|03F03&quot;,&quot;Hanga Roa&quot;],
&quot;Chilean											 智利			 &quot;:[&quot;-0300&quot;,&quot;10F03|03F03&quot;,&quot;圣地亚哥&quot;],
&quot;Colombia										 哥伦比亚&quot;:[&quot;-0500&quot;,&quot;&quot;,&quot;波哥大&quot;],
&quot;Costa Rica								 哥斯达黎加&quot;:[&quot;-0600&quot;,&quot;&quot;,&quot;圣何塞&quot;],
&quot;Cuba														 古巴			 &quot;:[&quot;-0500&quot;,&quot;04 13|10L03&quot;,&quot;哈瓦那&quot;],
&quot;Dominican									 多米尼加&quot;:[&quot;-0400&quot;,&quot;&quot;,&quot;圣多明各、罗梭&quot;],
&quot;Ecuador											 厄瓜多尔&quot;:[&quot;-0500&quot;,&quot;&quot;,&quot;基多&quot;],
&quot;El Salvador							 萨尔瓦多&quot;:[&quot;-0600&quot;,&quot;&quot;,&quot;圣萨尔瓦多&quot;],
&quot;Falklands									 福克兰群岛&quot;:[&quot;-0300&quot;,&quot;09F03|04F03&quot;,&quot;史丹利&quot;],
&quot;Guatemala									 危地马拉&quot;:[&quot;-0600&quot;,&quot;&quot;,&quot;危地马拉城&quot;],
&quot;Haiti													 海地			 &quot;:[&quot;-0500&quot;,&quot;&quot;,&quot;太子港&quot;],
&quot;Honduras										 洪都拉斯&quot;:[&quot;-0600&quot;,&quot;&quot;,&quot;特古西加尔巴&quot;],
&quot;Jamaica											 牙买加	 &quot;:[&quot;-0500&quot;,&quot;&quot;,&quot;金斯敦&quot;],
&quot;Mexico(Mazatlan)		 墨西哥	 &quot;:[&quot;-0700&quot;,&quot;&quot;,&quot;马萨特兰&quot;],
&quot;Mexico(首都)						 墨西哥	 &quot;:[&quot;-0600&quot;,&quot;&quot;,&quot;墨西哥城&quot;],
&quot;Mexico(蒂华纳)				 墨西哥	 &quot;:[&quot;-0800&quot;,&quot;&quot;,&quot;蒂华纳&quot;],
&quot;Nicaragua									 尼加拉瓜&quot;:[&quot;-0500&quot;,&quot;&quot;,&quot;马那瓜&quot;],
&quot;Panama												 巴拿马	 &quot;:[&quot;-0500&quot;,&quot;&quot;,&quot;巴拿马市&quot;],
&quot;Paraguay										 巴拉圭	 &quot;:[&quot;-0400&quot;,&quot;10F03|02L03&quot;,&quot;亚松森&quot;],
&quot;Peru														 秘鲁			 &quot;:[&quot;-0500&quot;,&quot;&quot;,&quot;利马&quot;],
&quot;Saint Kitts &amp; Nevis 圣基茨和尼维斯&quot;:[&quot;-0400&quot;,&quot;&quot;,&quot;巴斯特尔(Basseterre)&quot;],
&quot;St. Lucia									 圣卢西亚&quot;:[&quot;-0400&quot;,&quot;&quot;,&quot;卡斯特里&quot;],
&quot;St. Vincent &amp; Grenadines 圣文森特和格林纳丁斯&quot;:[&quot;-0400&quot;,&quot;&quot;,&quot;金斯敦&quot;],
&quot;Suriname										 苏里南&quot;:[&quot;-0300&quot;,&quot;&quot;,&quot;帕拉马里博(Paramaribo)&quot;],
&quot;Trinidad &amp; Tobago	 特立尼达和多巴哥&quot;:[&quot;-0400&quot;,&quot;&quot;,&quot;西班牙港&quot;],
&quot;Uruguay											 乌拉圭	 &quot;:[&quot;-0300&quot;,&quot;&quot;,&quot;蒙得维的亚&quot;],
&quot;Venezuela									 委内瑞拉&quot;:[&quot;-0400&quot;,&quot;&quot;,&quot;加拉加斯&quot;]
},
&quot;Africa												 非洲&quot;: {		 //----------------------------------------------
&quot;Algeria											 阿尔及利亚&quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;阿尔及尔&quot;],
&quot;Angola												 安哥拉	 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;罗安达&quot;],
&quot;Benin													 贝南			 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;新港&quot;],
&quot;Botswana										 博茨瓦纳&quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;哈博罗内&quot;],
&quot;Burundi											 布隆迪	 &quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;布琼布拉&quot;],
&quot;Cameroon										 喀麦隆	 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;雅温得&quot;],
&quot;Cape Verde								 佛德角	 &quot;:[&quot;-0100&quot;,&quot;&quot;,&quot;普拉亚&quot;],
&quot;Central African			 中非共和国&quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;班吉&quot;],
&quot;Chad														 乍得			 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;恩贾梅纳市&quot;],
&quot;Congo													 刚果(布)&quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;布拉柴维尔&quot;],
&quot;Djibouti										 吉布提	 &quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;吉布提&quot;],
&quot;Egypt													 埃及			 &quot;:[&quot;+0200&quot;,&quot;04L53|09L43&quot;,&quot;开罗&quot;],
&quot;Equatorial Guinea	 赤道几内亚&quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;马博托&quot;],
&quot;Ethiopia										 埃塞俄比亚&quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;亚的斯亚贝巴&quot;],
&quot;Gabon													 加蓬			 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;利伯维尔&quot;],
&quot;Gambia												 冈比亚	 &quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;班珠尔&quot;],
&quot;Ghana													 加纳			 &quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;阿克拉&quot;],
&quot;Guinea												 几内亚	 &quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;科纳克里&quot;],
&quot;Ivory Coast							 象牙海岸&quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;阿比让、雅穆索戈&quot;],
&quot;Kenya													 肯尼亚	 &quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;内罗毕&quot;],
&quot;Lesotho											 莱索托	 &quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;马塞卢&quot;],
&quot;Liberia											 利比里亚&quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;蒙罗维亚&quot;],
&quot;Madagascar								 马达加斯加&quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;塔那那利佛&quot;],
&quot;Malawi												 马拉维	 &quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;利隆圭&quot;],
&quot;Mali														 马里			 &quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;巴马科&quot;],
&quot;Mauritania								 毛里塔尼亚&quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;努瓦克肖特&quot;],
&quot;Mauritius									 毛里求斯&quot;:[&quot;+0400&quot;,&quot;&quot;,&quot;路易港&quot;],
&quot;Morocco											 摩洛哥	 &quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;卡萨布兰卡&quot;],
&quot;Mozambique								 莫桑比克&quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;马普托&quot;],
&quot;Namibia											 纳米比亚&quot;:[&quot;+0200&quot;,&quot;09F03|04F03&quot;,&quot;温得和克&quot;],
&quot;Niger													 尼日尔	 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;尼亚美&quot;],
&quot;Nigeria											 尼日利亚&quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;阿布贾&quot;],
&quot;Rwanda												 卢旺达	 &quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;基加利&quot;],
&quot;Sao Tome										 圣多美	 &quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;圣多美&quot;],
&quot;Senegal											 塞内加尔&quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;达卡尔&quot;],
&quot;Sierra Leone						 狮子山国&quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;自由城&quot;],
&quot;Somalia											 索马里	 &quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;摩加迪沙&quot;],
&quot;South Africa						 南非			 &quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;开普敦、普利托里亚&quot;],
&quot;Sudan													 苏丹			 &quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;喀土穆&quot;],
&quot;Tanzania										 坦桑尼亚&quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;达累斯萨拉姆&quot;],
&quot;Togo														 多哥			 &quot;:[&quot;+0000&quot;,&quot;&quot;,&quot;洛美隆&quot;],
&quot;Tunisia											 突尼斯	 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;突尼斯市&quot;],
&quot;Uganda												 乌干达	 &quot;:[&quot;+0300&quot;,&quot;&quot;,&quot;坎帕拉&quot;],
&quot;Zaire													 扎伊尔(刚果金)	 &quot;:[&quot;+0100&quot;,&quot;&quot;,&quot;金沙萨&quot;],
&quot;Zambia												 赞比亚	 &quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;卢萨卡&quot;],
&quot;Zimbabwe										 津巴布韦&quot;:[&quot;+0200&quot;,&quot;&quot;,&quot;哈拉雷&quot;]
},
&quot;Oceania											 大洋洲&quot;: { //----------------------------------------------
&quot;American Samoa(US) 美属萨摩亚(美)&quot;:[&quot;-1100&quot;,&quot;&quot;,&quot;帕果帕果港&quot;],
&quot;Aus.(Adelaide)				 澳大利亚	 &quot;:[&quot;+0930&quot;,&quot;10F03|03F03&quot;,&quot;阿得雷德&quot;],
&quot;Aus.(Brisbane)				 澳大利亚	 &quot;:[&quot;+1000&quot;,&quot;10F03|03F03&quot;,&quot;布里斯班&quot;],
&quot;Aus.(Darwin)						 澳大利亚	 &quot;:[&quot;+0930&quot;,&quot;10F03|03F03&quot;,&quot;达尔文&quot;],
&quot;Aus.(Hobart)						 澳大利亚	 &quot;:[&quot;+1000&quot;,&quot;10F03|03F03&quot;,&quot;荷伯特&quot;],
&quot;Aus.(Perth)							 澳大利亚	 &quot;:[&quot;+0800&quot;,&quot;10F03|03F03&quot;,&quot;佩思&quot;],
&quot;Aus.(Sydney)						 澳大利亚	 &quot;:[&quot;+1000&quot;,&quot;10F03|03F03&quot;,&quot;悉尼&quot;],
&quot;Cook Islands(NZ)		 库克群岛(新西兰)	 &quot;:[&quot;-1000&quot;,&quot;&quot;,&quot;阿瓦鲁阿&quot;],
&quot;Eniwetok										 埃尼威托克岛&quot;:[&quot;-1200&quot;,&quot;&quot;,&quot;埃尼威托克岛&quot;],
&quot;Fiji														 斐济					 &quot;:[&quot;+1200&quot;,&quot;11F03|02L03&quot;,&quot;苏瓦&quot;],
&quot;Guam														 关岛					 &quot;:[&quot;+1000&quot;,&quot;&quot;,&quot;阿加尼亚&quot;],
&quot;Hawaii(US)								 夏威夷(美)&quot;:[&quot;-1000&quot;,&quot;&quot;,&quot;檀香山&quot;],
&quot;Kiribati										 基里巴斯	 &quot;:[&quot;+1100&quot;,&quot;&quot;,&quot;塔拉瓦&quot;],
//&quot;Mariana Islands			 塞班岛			 &quot;:[&quot;&quot;,&quot;&quot;,&quot;塞班岛&quot;],
&quot;Marshall Is.						 马绍尔群岛&quot;:[&quot;+1200&quot;,&quot;&quot;,&quot;马朱罗&quot;],
&quot;Micronesia								 密克罗尼西亚联邦&quot;:[&quot;+1000&quot;,&quot;&quot;,&quot;帕利基尔(Palikir)&quot;],
&quot;Midway Is.(US)				 中途岛(美)&quot;:[&quot;-1100&quot;,&quot;&quot;,&quot;中途岛&quot;],
&quot;Nauru Rep.								 瑙鲁共和国&quot;:[&quot;+1200&quot;,&quot;&quot;,&quot;亚伦&quot;],
&quot;New Calednia(FR)		 新克里多尼亚(法)&quot;:[&quot;+1100&quot;,&quot;&quot;,&quot;努美阿&quot;],
&quot;New Zealand							 新西兰			 &quot;:[&quot;+1200&quot;,&quot;10F03|04F63&quot;,&quot;奥克兰&quot;],
&quot;New Zealand(CHADT) 新西兰			 &quot;:[&quot;+1245&quot;,&quot;10F03|04F63&quot;,&quot;惠灵顿&quot;],
&quot;Niue(NZ)										 纽埃(新)					 &quot;:[&quot;-1100&quot;,&quot;&quot;,&quot;阿洛菲(Alofi)&quot;],
&quot;Nor. Mariana Is.		 北马里亚纳群岛(美)&quot;:[&quot;+1000&quot;,&quot;&quot;,&quot;塞班岛&quot;],
&quot;Palau													 帕劳群岛(帛琉群岛)					 &quot;:[&quot;+0900&quot;,&quot;&quot;,&quot;科罗尔&quot;],
&quot;Papua New Guinea		 巴布亚新几内亚&quot;:[&quot;+1000&quot;,&quot;&quot;,&quot;莫尔斯比港&quot;],
&quot;Pitcairn Is.(UK)		 皮特克恩群岛(英)&quot;:[&quot;-0830&quot;,&quot;&quot;,&quot;亚当斯敦&quot;],
&quot;Polynesia(FR)					 玻利尼西亚(法)&quot;:[&quot;-1000&quot;,&quot;&quot;,&quot;巴比蒂、塔希提&quot;],
&quot;Solomon Is.							 所罗门群岛&quot;:[&quot;+1100&quot;,&quot;&quot;,&quot;霍尼亚拉&quot;],
&quot;Tahiti												 塔希提	 &quot;:[&quot;-1000&quot;,&quot;&quot;,&quot;帕佩特&quot;],
&quot;Tokelau(NZ)							 托克劳群岛(新)			 &quot;:[&quot;-1100&quot;,&quot;&quot;,&quot;努库诺努、法考福、阿塔富&quot;],
&quot;Tonga													 汤加			 &quot;:[&quot;+1300&quot;,&quot;10F63|04F63&quot;,&quot;努库阿洛法&quot;],
&quot;Tuvalu												 图瓦卢	 &quot;:[&quot;+1200&quot;,&quot;&quot;,&quot;富纳富提&quot;],
&quot;Western Samoa					 西萨摩亚&quot;:[&quot;-1100&quot;,&quot;&quot;,&quot;阿皮亚&quot;],
&quot;国际换日线																		 &quot;:[&quot;-1200&quot;,&quot;&quot;,&quot;国际换日线&quot;]
}
};

/*****************************************************************************
																																					 日期计算
*****************************************************************************/
//====================================== 返回农历 y年的总天数
function lYearDays(y) {
	var i, sum = 348;
	for(i=0x8000; i&gt;0x8; i&gt;&gt;=1) sum += (lunarInfo[y-1900] &amp; i)? 1: 0;
	return(sum+leapDays(y));
}
//====================================== 返回农历 y年闰月的天数
function leapDays(y) {
	if(leapMonth(y)) return( (lunarInfo[y-1899]&amp;0xf)==0xf? 30: 29);
	else return(0);
}
//====================================== 返回农历 y年闰哪个月 1-12 , 没闰返回 0
function leapMonth(y) {
	var lm = lunarInfo[y-1900] &amp; 0xf;
	return(lm==0xf?0:lm);
}
//====================================== 返回农历 y年m月的总天数
function monthDays(y,m) {
	return( (lunarInfo[y-1900] &amp; (0x10000&gt;&gt;m))? 30: 29 );
}

//====================================== 算出农历, 传入日期控件, 返回农历日期控件
//																																						 该控件属性有 .year .month .day .isLeap
function Lunar(objDate) {
		 var i, leap=0, temp=0;
		 var offset		 = (Date.UTC(objDate.getFullYear(),objDate.getMonth(),objDate.getDate()) - Date.UTC(1900,0,31))/86400000;
		 for(i=1900; i&lt;2100 &amp;&amp; offset&gt;0; i++) { temp=lYearDays(i); offset-=temp; }
		 if(offset&lt;0) { offset+=temp; i--; }
		 this.year = i;
		 leap = leapMonth(i); //闰哪个月
		 this.isLeap = false;
		 for(i=1; i&lt;13 &amp;&amp; offset&gt;0; i++) {
					 //闰月
					 if(leap&gt;0 &amp;&amp; i==(leap+1) &amp;&amp; this.isLeap==false)
								 { --i; this.isLeap = true; temp = leapDays(this.year); }
					 else
								 { temp = monthDays(this.year, i); }
					 //解除闰月
					 if(this.isLeap==true &amp;&amp; i==(leap+1)) this.isLeap = false;
					 offset -= temp;
		 }
		 if(offset==0 &amp;&amp; leap&gt;0 &amp;&amp; i==leap+1)
					 if(this.isLeap)
								 { this.isLeap = false; }
					 else
								 { this.isLeap = true; --i; }
		 if(offset&lt;0){ offset += temp; --i; }
		 this.month = i;
		 this.day = offset + 1;
}
//==============================返回公历 y年某m+1月的天数
function solarDays(y,m) {
		 if(m==1)
					 return(((y%4 == 0) &amp;&amp; (y%100 != 0) || (y%400 == 0))? 29: 28);
		 else
					 return(solarMonth[m]);
}
//============================== 传入 offset 返回干支, 0=甲子
function cyclical(num) {
		 return(Gan[num%10]+Zhi[num%12]);
}
//============================== 阴历属性
function calElement(sYear,sMonth,sDay,week,lYear,lMonth,lDay,isLeap,cYear,cMonth,cDay) {
					 this.isToday			 = false;
					 //瓣句
					 this.sYear					 = sYear;		 //公元年4位数字
					 this.sMonth				 = sMonth;	 //公元月数字
					 this.sDay						 = sDay;			 //公元日数字
					 this.week						 = week;			 //星期, 1个中文
					 //农历
					 this.lYear					 = lYear;		 //公元年4位数字
					 this.lMonth				 = lMonth;	 //农历月数字
					 this.lDay						 = lDay;			 //农历日数字
					 this.isLeap				 = isLeap;	 //是否为农历闰月?
					 //八字
					 this.cYear					 = cYear;		 //年柱, 2个中文
					 this.cMonth				 = cMonth;	 //月柱, 2个中文
					 this.cDay						 = cDay;			 //日柱, 2个中文
					 this.color					 = '';
					 this.lunarFestival = ''; //农历节日
					 this.solarFestival = ''; //公历节日
					 this.solarTerms			 = ''; //节气
}
//===== 某年的第n个节气为几日(从0小寒起算)
function sTerm(y,n) {
		 var offDate = new Date( ( 31556925974.7*(y-1900) + sTermInfo[n]*60000	 ) + Date.UTC(1900,0,6,2,5) );
		 return(offDate.getUTCDate());
}


//============================== 返回阴历控件 (y年,m+1月)
/*
功能说明: 返回整个月的日期资料控件
使用方式: OBJ = new calendar(年,零起算月);
	 OBJ.length					 返回当月最大日
	 OBJ.firstWeek		 返回当月一日星期
	 由 OBJ[日期].属性名称 即可取得各项值
	 OBJ[日期].isToday	 返回是否为今日 true 或 false
	 其他 OBJ[日期] 属性参见 calElement() 中的注解
*/
function calendar(y,m) {
		 var sDObj, lDObj, lY, lM, lD=1, lL, lX=0, tmp1, tmp2, tmp3;
		 var cY, cM, cD; //年柱,月柱,日柱
		 var lDPOS = new Array(3);
		 var n = 0;
		 var firstLM = 0;
		 sDObj = new Date(y,m,1,0,0,0,0);			 //当月一日日期
		 this.length			 = solarDays(y,m);			 //公历当月天数
		 this.firstWeek = sDObj.getDay();			 //公历当月1日星期几
		 ////////年柱 1900年立春后为庚子年(60进制36)
		 if(m&lt;2) cY=cyclical(y-1900+36-1);
		 else cY=cyclical(y-1900+36);
		 var term2=sTerm(y,2); //立春日期
		 ////////月柱 1900年1月小寒以前为 丙子月(60进制12)
		 var firstNode = sTerm(y,m*2) //返回当月「节」为几日开始
		 cM = cyclical((y-1900)*12+m+12);
		 //当月一日与 1900/1/1 相差天数
		 //1900/1/1与 1970/1/1 相差25567日, 1900/1/1 日柱为甲戌日(60进制10)
		 var dayCyclical = Date.UTC(y,m,1,0,0,0,0)/86400000+25567+10;
		 for(var i=0;i&lt;this.length;i++) {
					 if(lD&gt;lX) {
								 sDObj = new Date(y,m,i+1);			 //当月一日日期
								 lDObj = new Lunar(sDObj);				 //农历
								 lY			 = lDObj.year;										 //农历年
								 lM			 = lDObj.month;									 //农历月
								 lD			 = lDObj.day;											 //农历日
								 lL			 = lDObj.isLeap;								 //农历是否闰月
								 lX			 = lL? leapDays(lY): monthDays(lY,lM); //农历当月最后一天
								 if(n==0) firstLM = lM;
								 lDPOS[n++] = i-lD+1;
					 }
					 //依节气调整二月分的年柱, 以立春为界
					 if(m==1 &amp;&amp; (i+1)==term2) cY=cyclical(y-1900+36);
					 //依节气月柱, 以「节」为界
					 if((i+1)==firstNode) cM = cyclical((y-1900)*12+m+13);
					 //日柱
					 cD = cyclical(dayCyclical+i);
					 //sYear,sMonth,sDay,week,
					 //lYear,lMonth,lDay,isLeap,
					 //cYear,cMonth,cDay
					 this[i] = new calElement(y, m+1, i+1, nStr1[(i+this.firstWeek)%7],
																														 lY, lM, lD++, lL,
																														 cY ,cM, cD );
		 }
		 //节气
		 tmp1=sTerm(y,m*2	 )-1;
		 tmp2=sTerm(y,m*2+1)-1;
		 this[tmp1].solarTerms = solarTerm[m*2];
		 this[tmp2].solarTerms = solarTerm[m*2+1];
		 if(m==3) this[tmp1].color = 'red'; //清明颜色
		 //公历节日
		 for(i in sFtv)
					 if(sFtv[i].match(/^(\d{2})(\d{2})([\s\*])(.+)&#36;/))
								 if(Number(RegExp.&#36;1)==(m+1)) {
											 this[Number(RegExp.&#36;2)-1].solarFestival += RegExp.&#36;4 + ' ';
											 if(RegExp.&#36;3=='*') this[Number(RegExp.&#36;2)-1].color = 'red';
								 }
		 //月周节日
		 for(i in wFtv)
					 if(wFtv[i].match(/^(\d{2})(\d)(\d)([\s\*])(.+)&#36;/))
								 if(Number(RegExp.&#36;1)==(m+1)) {
											 tmp1=Number(RegExp.&#36;2);
											 tmp2=Number(RegExp.&#36;3);
											 if(tmp1&lt;5)
														 this[((this.firstWeek&gt;tmp2)?7:0) + 7*(tmp1-1) + tmp2 - this.firstWeek].solarFestival += RegExp.&#36;5 + ' ';
											 else {
														 tmp1 -= 5;
														 tmp3 = (this.firstWeek+this.length-1)%7; //当月最后一天星期?
														 this[this.length - tmp3 - 7*tmp1 + tmp2 - (tmp2&gt;tmp3?7:0) - 1 ].solarFestival += RegExp.&#36;5 + ' ';
											 }
								 }
		 //农历节日
		 for(i in lFtv)
					 if(lFtv[i].match(/^(\d{2})(.{2})([\s\*])(.+)&#36;/)) {
								 tmp1=Number(RegExp.&#36;1)-firstLM;
								 if(tmp1==-11) tmp1=1;
								 if(tmp1 &gt;=0 &amp;&amp; tmp1&lt;n) {
											 tmp2 = lDPOS[tmp1] + Number(RegExp.&#36;2) -1;
											 if( tmp2 &gt;= 0 &amp;&amp; tmp2&lt;this.length &amp;&amp; this[tmp2].isLeap!=true) {
														 this[tmp2].lunarFestival += RegExp.&#36;4 + ' ';
														 if(RegExp.&#36;3=='*') this[tmp2].color = 'red';
											 }
								 }
					 }

		 //复活节只出现在3或4月
		 if(m==2 || m==3) {
					 var estDay = new easter(y);
					 if(m == estDay.m)
								 this[estDay.d-1].solarFestival = this[estDay.d-1].solarFestival+' 复活节 Easter Sunday';
		 }

		 if(m==2) this[20].solarFestival = this[20].solarFestival+unescape('%20%u6D35%u8CE2%u751F%u65E5');
		 //黑色星期五
		 if((this.firstWeek+12)%7==5)
					 this[12].solarFestival += '黑色星期五';
		 //今日
		 if(y==tY &amp;&amp; m==tM) this[tD-1].isToday = true;
}
//======================================= 返回该年的复活节(春分后第一次满月周后的第一主日)
function easter(y) {
		 var term2=sTerm(y,5); //取得春分日期
		 var dayTerm2 = new Date(Date.UTC(y,2,term2,0,0,0,0)); //取得春分的公历日期控件(春分一定出现在3月)
		 var lDayTerm2 = new Lunar(dayTerm2); //取得取得春分农历
		 if(lDayTerm2.day&lt;15) //取得下个月圆的相差天数
					 var lMlen= 15-lDayTerm2.day;
		 else
					 var lMlen= (lDayTerm2.isLeap? leapDays(y): monthDays(y,lDayTerm2.month)) - lDayTerm2.day + 15;
		 //一天等于 1000*60*60*24 = 86400000 毫秒
		 var l15 = new Date(dayTerm2.getTime() + 86400000*lMlen ); //求出第一次月圆为公历几日
		 var dayEaster = new Date(l15.getTime() + 86400000*( 7-l15.getUTCDay() ) ); //求出下个周日
		 this.m = dayEaster.getUTCMonth();
		 this.d = dayEaster.getUTCDate();
}
//====================== 中文日期
function cDay(d){
		 var s;
		 switch (d) {
					 case 10:
								 s = '初十'; break;
					 case 20:
								 s = '二十'; break;
								 break;
					 case 30:
								 s = '三十'; break;
								 break;
					 default :
								 s = nStr2[Math.floor(d/10)];
								 s += nStr1[d%10];
		 }
		 return(s);
}
///////////////////////////////////////////////////////////////////////////////
var cld;
function drawCld(SY,SM) {
		 var i,sD,s,size;
		 cld = new calendar(SY,SM);
		 if(SY&gt;1874 &amp;&amp; SY&lt;1909) yDisplay = '光绪' + (((SY-1874)==1)?'元':SY-1874);
		 if(SY&gt;1908 &amp;&amp; SY&lt;1912) yDisplay = '宣统' + (((SY-1908)==1)?'元':SY-1908);
		 if(SY&gt;1911 &amp;&amp; SY&lt;1950) yDisplay = '民国' + (((SY-1911)==1)?'元':SY-1911);
		 if(SY&gt;1948) yDisplay = '建国' + (((SY-1948)==1)?'元':SY-1948);
		 GZ.innerHTML = yDisplay +'年 农历 ' + cyclical(SY-1900+36) + '年 【'+Animals[(SY-4)%12]+'年】';
		 YMBG.innerHTML = &quot; &quot; + SY + &quot;&lt;BR&gt; &quot; + monthName[SM];
		 for(i=0;i&lt;42;i++) {
					 sObj=eval('SD'+ i);
					 lObj=eval('LD'+ i);
					 sObj.className = '';
					 sD = i - cld.firstWeek;
					 if(sD&gt;-1 &amp;&amp; sD&lt;cld.length) { //日期内
								 sObj.innerHTML = sD+1;
								 if(cld[sD].isToday) sObj.className = 'todyaColor'; //今日颜色
								 sObj.style.color = cld[sD].color; //法定假日颜色
								 if(cld[sD].lDay==1) //显示农历月
											 lObj.innerHTML = '&lt;b&gt;'+(cld[sD].isLeap?'闰':'') + cld[sD].lMonth + '月' + (monthDays(cld[sD].lYear,cld[sD].lMonth)==29?'小':'大')+'&lt;/b&gt;';
								 else //显示农历日
											 lObj.innerHTML = cDay(cld[sD].lDay);
								 s=cld[sD].lunarFestival;
								 if(s.length&gt;0) { //农历节日
											 if(s.length&gt;6) s = s.substr(0, 4)+'...';
											 s = s.fontcolor('red');
								 }
								 else { //公历节日
											 s=cld[sD].solarFestival;
											 if(s.length&gt;0) {
														 size = (s.charCodeAt(0)&gt;0 &amp;&amp; s.charCodeAt(0)&lt;128)?8:4;
														 if(s.length&gt;size+2) s = s.substr(0, size)+'...';
														 s=(s=='黑色星期五')?s.fontcolor('black'):s.fontcolor('blue');
											 }
											 else { //廿四节气
														 s=cld[sD].solarTerms;
														 if(s.length&gt;0) s = s.fontcolor('limegreen');
											 }
								 }
								 if(cld[sD].solarTerms=='清明') s = '清明节'.fontcolor('red');
								 if(cld[sD].solarTerms=='芒种') s = '芒种'.fontcolor('red');
								 if(cld[sD].solarTerms=='夏至') s = '夏至'.fontcolor('red');
								 if(cld[sD].solarTerms=='冬至') s = '冬至'.fontcolor('red');

								 if(s.length&gt;0) lObj.innerHTML = s;
					 }
					 else { //非日期
								 sObj.innerHTML = '';
								 lObj.innerHTML = '';
					 }
		 }
}

function changeCld() {
		 var y,m;
		 y=CLD.SY.selectedIndex+1900;
		 m=CLD.SM.selectedIndex;
		 drawCld(y,m);
}
function pushBtm(K) {
	switch (K){
			 case 'YU' :
						 if(CLD.SY.selectedIndex&gt;0) CLD.SY.selectedIndex--;
						 break;
			 case 'YD' :
						 if(CLD.SY.selectedIndex&lt;200) CLD.SY.selectedIndex++;
						 break;
			 case 'MU' :
						 if(CLD.SM.selectedIndex&gt;0) {
									 CLD.SM.selectedIndex--;
						 }
						 else {
									 CLD.SM.selectedIndex=11;
									 if(CLD.SY.selectedIndex&gt;0) CLD.SY.selectedIndex--;
						 }
						 break;
			 case 'MD' :
						 if(CLD.SM.selectedIndex&lt;11) {
									 CLD.SM.selectedIndex++;
						 }
						 else {
									 CLD.SM.selectedIndex=0;
									 if(CLD.SY.selectedIndex&lt;200) CLD.SY.selectedIndex++;
						 }
						 break;
			 default :
						 CLD.SY.selectedIndex=tY-1900;
						 CLD.SM.selectedIndex=tM;
	}
	changeCld();
}
var Today = new Date();
var tY = Today.getFullYear();
var tM = Today.getMonth();
var tD = Today.getDate();
//////////////////////////////////////////////////////////////////////////////
var width = &quot;130&quot;;
var offsetx = 2;
var offsety = 8;
var x = 0;
var y = 0;
var snow = 0;
var sw = 0;
var cnt = 0;
var dStyle;
document.onmousemove = mEvn;
//显示详细日期资料
function mOvr(v) {
		 var s,festival;
		 var sObj=eval('SD'+ v);
		 var d=sObj.innerHTML-1;
					 //sYear,sMonth,sDay,week,
					 //lYear,lMonth,lDay,isLeap,
					 //cYear,cMonth,cDay
		 if(sObj.innerHTML!='') {
					 sObj.style.cursor = 's-resize';
					 if(cld[d].solarTerms == '' &amp;&amp; cld[d].solarFestival == '' &amp;&amp; cld[d].lunarFestival == '')
								 festival = '';
					 else
								 festival = '&lt;TABLE WIDTH=100% BORDER=0 CELLPADDING=2 CELLSPACING=0 BGCOLOR=&quot;#CCFFCC&quot;&gt;&lt;TR&gt;&lt;TD&gt;'+
								 '&lt;FONT COLOR=&quot;#000000&quot; STYLE=&quot;font-size:9pt;&quot;&gt;'+cld[d].solarTerms + ' ' + cld[d].solarFestival + ' ' + cld[d].lunarFestival+'&lt;/FONT&gt;&lt;/TD&gt;'+
								 '&lt;/TR&gt;&lt;/TABLE&gt;';
					 s= '&lt;TABLE WIDTH=&quot;130&quot; BORDER=0 CELLPADDING=&quot;2&quot; CELLSPACING=0 BGCOLOR=&quot;#000066&quot; style=&quot;filter:Alpha(opacity=80)&quot;&gt;&lt;TR&gt;&lt;TD&gt;' +
								 '&lt;TABLE WIDTH=100% BORDER=0 CELLPADDING=0 CELLSPACING=0&gt;&lt;TR&gt;&lt;TD ALIGN=&quot;right&quot;&gt;&lt;FONT COLOR=&quot;#ffffff&quot; STYLE=&quot;font-size:9pt;&quot;&gt;'+
								 cld[d].sYear+' 年 '+cld[d].sMonth+' 月 '+cld[d].sDay+' 日&lt;br&gt;星期'+cld[d].week+'&lt;br&gt;'+
								 '&lt;font color=&quot;violet&quot;&gt;农历'+(cld[d].isLeap?'闰 ':' ')+cld[d].lMonth+' 月 '+cld[d].lDay+' 日&lt;/font&gt;&lt;br&gt;'+
								 '&lt;font color=&quot;yellow&quot;&gt;'+cld[d].cYear+'年 '+cld[d].cMonth+'月 '+cld[d].cDay + '日&lt;/font&gt;'+
								 '&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TABLE&gt;'+ festival +'&lt;/TD&gt;&lt;/TR&gt;&lt;/TABLE&gt;';
					 document.all[&quot;detail&quot;].innerHTML = s;
					 if (snow == 0) {
								 dStyle.left = x+offsetx-(width/2);
								 dStyle.top = y+offsety;
								 dStyle.visibility = &quot;visible&quot;;
								 snow = 1;
					 }
		 }
}
//清除详细日期资料
function mOut() {
		 if ( cnt &gt;= 1 ) { sw = 0; }
		 if ( sw == 0 ) { snow = 0; dStyle.visibility = &quot;hidden&quot;;}
		 else cnt++;
}
//取得位置
function mEvn() {
		 x=event.x;
		 y=event.y;
		 if (document.body.scrollLeft)
					 {x=event.x+document.body.scrollLeft; y=event.y+document.body.scrollTop;}
		 if (snow){
					 dStyle.left = x+offsetx-(width/2);
					 dStyle.top = y+offsety;
		 }
}
/*****************************************************************************
																																	 世界时间计算
*****************************************************************************/
var OneHour = 60*60*1000;
var OneDay = OneHour*24;
var TimezoneOffset = Today.getTimezoneOffset()*60*1000;
function showUTC(objD) {
		 var dn,s;
		 var hh = objD.getUTCHours();
		 var mm = objD.getUTCMinutes();
		 var ss = objD.getUTCSeconds();
		 s = objD.getUTCFullYear() + &quot;年&quot; + (objD.getUTCMonth() + 1) + &quot;月&quot; + objD.getUTCDate() +&quot;日 (&quot;+ nStr1[objD.getUTCDay()] +&quot;)&quot;;
		 if(hh&gt;12) { hh = hh-12; dn = '下午'; }
		 else dn = '上午';
		 if(hh&lt;10) hh = '0' + hh;
		 if(mm&lt;10) mm = '0' + mm;
		 if(ss&lt;10) ss = '0' + ss;
		 s += &quot; &quot; + dn + ' ' + hh + &quot;:&quot; + mm + &quot;:&quot; + ss;
		 return(s);
}
function showLocale(objD) {
		 var dn,s;
		 var hh = objD.getHours();
		 var mm = objD.getMinutes();
		 var ss = objD.getSeconds();
		 s = objD.getFullYear() + &quot;年&quot; + (objD.getMonth() + 1) + &quot;月&quot; + objD.getDate() +&quot;日 (&quot;+ nStr1[objD.getDay()] +&quot;)&quot;;
		 if(hh&gt;12) { hh = hh-12; dn = '下午'; }
		 else dn = '上午';
		 if(hh&lt;10) hh = '0' + hh;
		 if(mm&lt;10) mm = '0' + mm;
		 if(ss&lt;10) ss = '0' + ss;
		 s += &quot; &quot; + dn + ' ' + hh + &quot;:&quot; + mm + &quot;:&quot; + ss;
		 return(s);
}
//传入时差字串, 返回偏移之正负毫秒
function parseOffset(s) {
		 var sign,hh,mm,v;
		 sign = s.substr(0,1)=='-'?-1:1;
		 hh = Math.floor(s.substr(1,2));
		 mm = Math.floor(s.substr(3,2));
		 v = sign*(hh*60+mm)*60*1000;
		 return(v);
}
//返回UTC日期控件 (年,月-1,第几个星期几,几点)
function getWeekDay(y,m,nd,w,h){
		 var d,d2,w1;
		 if(nd&gt;0){
					 d = new Date(Date.UTC(y, m, 1));
					 w1 = d.getUTCDay();
					 d2 = new Date( d.getTime() + ((w&lt;w1? w+7-w1 : w-w1 )+(nd-1)*7		 )*OneDay + h*OneHour);
		 }
		 else {
					 nd = Math.abs(nd);
					 d = new Date( Date.UTC(y, m+1, 1)	 - OneDay );
					 w1 = d.getUTCDay();
					 d2 = new Date( d.getTime() + (	 (w&gt;w1? w-7-w1 : w-w1 )-(nd-1)*7		 )*OneDay + h*OneHour);
		 }
		 return(d2);
}
//传入某时间值, 日光节约字串 返回 true 或 false
function isDaylightSaving(d,strDS) {
		 if(strDS == '') return(false);
		 var m1,n1,w1,t1;
		 var m2,n2,w2,t2;
		 with (Math){
					 m1 = floor(strDS.substr(0,2))-1;
					 w1 = floor(strDS.substr(3,1));
					 t1 = floor(strDS.substr(4,1));
					 m2 = floor(strDS.substr(6,2))-1;
					 w2 = floor(strDS.substr(9,1));
					 t2 = floor(strDS.substr(10,1));
		 }
		 switch(strDS.substr(2,1)){
					 case 'F': n1=1; break;
					 case 'L': n1=-1; break;
					 default : n1=0; break;
		 }
		 switch(strDS.substr(8,1)){
					 case 'F': n2=1; break;
					 case 'L': n2=-1; break;
					 default : n2=0; break;
		 }

		 var d1, d2, re;
		 if(n1==0)
					 d1 = new Date(Date.UTC(d.getUTCFullYear(), m1, Math.floor(strDS.substr(2,2)),t1));
		 else
					 d1 = getWeekDay(d.getUTCFullYear(),m1,n1,w1,t1);
		 if(n2==0)
					 d2 = new Date(Date.UTC(d.getUTCFullYear(), m2, Math.floor(strDS.substr(8,2)),t2));
		 else
					 d2 = getWeekDay(d.getUTCFullYear(),m2,n2,w2,t2);
		 if(d2&gt;d1)
					 re = (d&gt;d1 &amp;&amp; d&lt;d2)? true: false;
		 else
					 re = (d&gt;d1 || d&lt;d2)? true: false;
		 return(re);
}
var isDS = false;
//计算全球时间
function getGlobeTime() {
		 var d,s;
		 d = new Date();
		 d.setTime(d.getTime()+parseOffset(objTimeZone[0]));
		 isDS=isDaylightSaving(d,objTimeZone[1]);
		 if(isDS) d.setTime(d.getTime()+OneHour);
		 return(showUTC(d));
}
var objTimeZone;
var objContinentMenu;
var objCountryMenu;
function tick() {
		 var today;
		 today = new Date();
		 LocalTime.innerHTML = showLocale(today);
		 GlobeTime.innerHTML = getGlobeTime();
		 window.setTimeout(&quot;tick()&quot;, 1000);
}
//指定自定索引时区
function setTZ(a,c){
		 objContinentMenu.options[a].selected=true;
		 chContinent();
		 objCountryMenu.options[c].selected=true;
		 chCountry();
}
//变更区域
function chContinent() {
		 var key,i;
		 continent = objContinentMenu.options[objContinentMenu.selectedIndex].text;
		 for (var i = objCountryMenu.options.length-1; i &gt;= 0; i--)
					 objCountryMenu[0]=null;
		 for (key in timeData[continent])
					 objCountryMenu.options[objCountryMenu.options.length]=new Option(key);
		 objCountryMenu.options[0].selected=true;
		 chCountry();
}
//变更国家
function chCountry() {
		 var txtContinent = objContinentMenu.options[objContinentMenu.selectedIndex].text;
		 var txtCountry = objCountryMenu.options[objCountryMenu.selectedIndex].text;
		 objTimeZone = timeData[txtContinent][txtCountry];
		 getGlobeTime();
		 //地图位移
		 City.innerHTML = (isDS==true?&quot;&lt;SPAN STYLE='font-size:12pt;font-family:Wingdings; color:Red;'&gt;R&lt;/span&gt; &quot;:'') + objTimeZone[2]; //首都
		 var pos = Math.floor(objTimeZone[0].substr(0,3));
		 if(pos&lt;0) pos+=24;
		 pos*=-10;
		 world.style.left = pos;
}
function setCookie(name,value) {
		 var today = new Date();
		 var expires = new Date();
		 expires.setTime(today.getTime() + 1000*60*60*24*365);
		 document.cookie = name + &quot;=&quot; + escape(value) + &quot;; expires=&quot; + expires.toGMTString();
}
function getCookie(Name) {
		 var search = Name + &quot;=&quot;;
		 if(document.cookie.length &gt; 0) {
					 offset = document.cookie.indexOf(search);
					 if(offset != -1) {
								 offset += search.length;
								 end = document.cookie.indexOf(&quot;;&quot;, offset);
								 if(end == -1) end = document.cookie.length;
								 return unescape(document.cookie.substring(offset, end));
					 }
					 else return('');
		 }
		 else return('');
}
///////////////////////////////////////////////////////////////////////////
function initialize() {
		 var key;
		 //时间
		 map.filters.Light.Clear();
		 map.filters.Light.addAmbient(255,255,255,60);
		 map.filters.Light.addCone(120, 60, 80, 120, 60, 255,255,255,120,60);
		 objContinentMenu=document.WorldClock.continentMenu;
		 objCountryMenu=document.WorldClock.countryMenu;
		 for (key in timeData)
					 objContinentMenu[objContinentMenu.length]=new Option(key);

		 var TZ1 = getCookie('TZ1');
		 var TZ2 = getCookie('TZ2');

		 if(TZ1=='') {TZ1=0; TZ2=3;}
		 setTZ(TZ1,TZ2);
		 tick();

		 //阴历
		 dStyle = detail.style;
		 CLD.SY.selectedIndex=tY-1900;
		 CLD.SM.selectedIndex=tM;
		 drawCld(tY,tM);
}
function terminate() {
		 setCookie(&quot;TZ1&quot;,objContinentMenu.selectedIndex);
		 setCookie(&quot;TZ2&quot;,objCountryMenu.selectedIndex);
}


//--&gt;
&lt;/SCRIPT&gt;
&lt;STYLE&gt;.todyaColor {
	BACKGROUND-COLOR: aqua
}
&lt;/STYLE&gt;
&lt;META content=&quot;MSHTML 5.50.4807.2300&quot; name=GENERATOR&gt;&lt;/HEAD&gt;
&lt;BODY bgColor=#ffffff onload=initialize() onunload=terminate()&gt;
&lt;SCRIPT language=JavaScript&gt;&lt;!--
		 if(navigator.appName == &quot;Netscape&quot; || parseInt(navigator.appVersion) &lt; 4)
		 document.write(&quot;&lt;h1&gt;你的浏览器无法执行此程序。&lt;/h1&gt;此程序需在 IE4 以后的版本才能执行!!&quot;)
//--&gt;&lt;/SCRIPT&gt;
&lt;DIV id=detail 
style=&quot;Z-INDEX: 3; FILTER: shadow(color=#333333,direction=135); WIDTH: 140px; POSITION: absolute; HEIGHT: 120px&quot;&gt;&lt;/DIV&gt;
&lt;CENTER&gt;
&lt;TABLE border=0&gt;
	 &lt;TBODY&gt;
	 &lt;TR&gt;&lt;!------------------------------ 世界时间 -----------------------------------&gt;
			 &lt;FORM name=WorldClock&gt;
			 &lt;TD vAlign=top align=middle width=240&gt;&lt;FONT style=&quot;FONT-SIZE: 9pt&quot; 
					 size=2&gt;本地时间&lt;/FONT&gt;&lt;BR&gt;&lt;SPAN id=LocalTime 
					 style=&quot;FONT-SIZE: 11pt; COLOR: #000080; FONT-FAMILY: Arial&quot;&gt;0000年0月0日(　)午 
					 00:00:00&lt;/SPAN&gt; 
					 &lt;P&gt;&lt;SPAN id=City 
					 style=&quot;FONT-SIZE: 9pt; WIDTH: 150px; FONT-FAMILY: '新细明体'&quot;&gt;中国&lt;/SPAN&gt; 
					 &lt;BR&gt;&lt;SPAN id=GlobeTime 
					 style=&quot;FONT-SIZE: 11pt; COLOR: #000080; FONT-FAMILY: Arial&quot;&gt;0000年0月0日(　)午 
					 00:00:00&lt;/SPAN&gt;&lt;BR&gt;
					 &lt;TABLE style=&quot;FONT-SIZE: 10pt; FONT-FAMILY: Wingdings&quot;&gt;
							 &lt;TBODY&gt;
							 &lt;TR&gt;
									 &lt;TD align=middle&gt;&Uacute; 
											 &lt;DIV id=map 
											 style=&quot;FILTER: Light; OVERFLOW: hidden; WIDTH: 240px; HEIGHT: 120px; BACKGROUND-COLOR: mediumblue&quot;&gt;&lt;FONT 
											 id=world 
											 style=&quot;FONT-SIZE: 185px; LEFT: 0px; COLOR: green; FONT-FAMILY: Webdings; POSITION: relative; TOP: -26px&quot;&gt;&lt;/FONT&gt; 
											 &lt;/DIV&gt;&Ugrave;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR&gt;&lt;SELECT 
					 style=&quot;FONT: 9pt '细明体'; WIDTH: 240px; BACKGROUND-COLOR: #e0e0ff&quot; 
					 onchange=chContinent() name=continentMenu&gt;&lt;/SELECT&gt;&lt;BR&gt;&lt;SELECT 
					 style=&quot;FONT: 9pt '细明体'; WIDTH: 240px; BACKGROUND-COLOR: #e0e0ff&quot; 
					 onchange=chCountry() name=countryMenu&gt;&lt;/SELECT&gt;
					 &lt;P&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/FORM&gt;&lt;!------------------------------ 万年历 -----------------------------------&gt;
			 &lt;FORM name=CLD&gt;
			 &lt;TD align=middle&gt;
					 &lt;DIV style=&quot;Z-INDEX: -1; POSITION: absolute; TOP: 30px&quot;&gt;&lt;FONT id=YMBG 
					 style=&quot;FONT-SIZE: 100pt; COLOR: #f0f0f0; FONT-FAMILY: 'Arial Black'&quot;&gt; 0000&lt;BR&gt; JUN&lt;/FONT&gt; 
					 &lt;/DIV&gt;
					 &lt;TABLE border=0&gt;
							 &lt;TBODY&gt;
							 &lt;TR&gt;
									 &lt;TD bgColor=#000080 colSpan=7&gt;&lt;FONT style=&quot;FONT-SIZE: 9pt&quot; 
											 color=#ffffff size=2&gt;公元&lt;SELECT style=&quot;FONT-SIZE: 9pt&quot; 
											 onchange=changeCld() name=SY&gt; 
													 &lt;SCRIPT language=JavaScript&gt;&lt;!--
									 for(i=1900;i&lt;2101;i++) document.write('&lt;option&gt;'+i)
											 //--&gt;&lt;/SCRIPT&gt;
											 &lt;/SELECT&gt;年&lt;SELECT style=&quot;FONT-SIZE: 9pt&quot; onchange=changeCld() 
											 name=SM&gt; 
													 &lt;SCRIPT language=JavaScript&gt;&lt;!--
											 for(i=1;i&lt;13;i++) document.write('&lt;option&gt;'+i)
											 //--&gt;&lt;/SCRIPT&gt;
											 &lt;/SELECT&gt;月&lt;/FONT&gt; &lt;FONT id=GZ face=标楷体 color=#ffffff 
											 size=4&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;/TD&gt;&lt;/TR&gt;
							 &lt;TR align=middle bgColor=#e0e0e0&gt;
									 &lt;TD width=54&gt;日&lt;/TD&gt;
									 &lt;TD width=54&gt;一&lt;/TD&gt;
									 &lt;TD width=54&gt;二&lt;/TD&gt;
									 &lt;TD width=50&gt;三&lt;/TD&gt;
									 &lt;TD width=54&gt;四&lt;/TD&gt;
									 &lt;TD width=54&gt;五&lt;/TD&gt;
									 &lt;TD width=54&gt;六&lt;/TD&gt;&lt;/TR&gt;
							 &lt;SCRIPT language=JavaScript&gt;&lt;!--
											 var gNum, color1, color2;
											 // 星期六颜色
											 switch (conWeekend) {
											 case 1:
														 color1 = 'black';
														 color2 = color1;
														 break;
											 case 2:
														 color1 = 'green';
														 color2 = color1;
														 break;
											 case 3:
														 color1 = 'red';
														 color2 = color1;
														 break;
											 default :
														 color1 = 'green';
														 color2 = 'red';
											 }
											 for(i=0;i&lt;6;i++) {
														 document.write('&lt;tr align=center&gt;')
														 for(j=0;j&lt;7;j++) {
																	 gNum = i*7+j
																	 document.write('&lt;td id=&quot;GD' + gNum +'&quot; onMouseOver=&quot;mOvr(' + gNum +')&quot; onMouseOut=&quot;mOut()&quot;&gt;&lt;font id=&quot;SD' + gNum +'&quot; size=5 face=&quot;Arial Black&quot;')
																	 if(j == 0) document.write(' color=red')
																	 if(j == 6) {
																				 if(i%2==1) document.write(' color='+color2)
																							 else document.write(' color='+color1)
																	 }
																	 document.write(' TITLE=&quot;&quot;&gt; &lt;/font&gt;&lt;br&gt;&lt;font id=&quot;LD' + gNum + '&quot; size=2 style=&quot;font-size:9pt&quot;&gt; &lt;/font&gt;&lt;/td&gt;')
														 }
														 document.write('&lt;/tr&gt;')
											 }
											 //--&gt;&lt;/SCRIPT&gt;
							 &lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/TD&gt;
			 &lt;SCRIPT src=&quot;1900-2100 两百年超酷百年日历.files/counter.htm&quot;&gt;&lt;/SCRIPT&gt;
			 &lt;TD vAlign=top align=middle width=40&gt;&lt;BR&gt;&lt;BR&gt;&lt;BR&gt;年&lt;BR&gt;&lt;BUTTON 
					 style=&quot;FONT-SIZE: 9pt&quot; 
					 onclick=&quot;pushBtm('YD')&quot;&gt;&lt;B&gt;&uarr;&lt;/B&gt;&lt;/BUTTON&gt;&lt;BR&gt;&lt;BUTTON 
					 style=&quot;FONT-SIZE: 9pt&quot; onclick=&quot;pushBtm('YU')&quot;&gt;&lt;B&gt;&darr;&lt;/B&gt;&lt;/BUTTON&gt; 
					 &lt;P&gt;月&lt;BR&gt;&lt;BUTTON style=&quot;FONT-SIZE: 9pt&quot; 
					 onclick=&quot;pushBtm('MD')&quot;&gt;&lt;B&gt;&uarr;&lt;/B&gt;&lt;/BUTTON&gt;&lt;BR&gt;&lt;BUTTON 
					 style=&quot;FONT-SIZE: 9pt&quot; onclick=&quot;pushBtm('MU')&quot;&gt;&lt;B&gt;&darr;&lt;/B&gt;&lt;/BUTTON&gt; 
					 &lt;P&gt;&lt;BUTTON style=&quot;FONT-SIZE: 9pt&quot; onclick=&quot;pushBtm('')&quot;&gt;本&lt;BR&gt;月&lt;/BUTTON&gt; 
					 &lt;P&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/FORM&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;FONT style=&quot;FONT-SIZE: 9pt&quot; 
color=#ffffff&gt;
&lt;/FONT&gt;&lt;/CENTER&gt;&lt;/BODY&gt;&lt;/HTML&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/59/</link>
<category domain="http://www.blackliu.com/art/cat/3/"><![CDATA[脚本应用]]></category>
<pubDate>Fri, 03 Jul 2009 23:30:56 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/58/</guid>
<title><![CDATA[三个最常用的JS时间特效]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.01 Transitional//EN&quot;
&quot;http://www.w3.org/TR/html4/loose.dtd&quot;&gt;
&lt;html&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=gb2312&quot;&gt;
&lt;meta name=&quot;Copyright&quot; content=&quot;懒人图库 http://www.lanrentuku.com/&quot; /&gt;
&lt;meta name=&quot;description&quot; content=&quot;学会偷懒，并懒出境界是提高工作效率最有效的方法！&quot; /&gt;
&lt;meta content=&quot;懒人图库&quot; name=&quot;keywords&quot; /&gt;
&lt;title&gt;懒人图库&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;table width=&quot;298&quot;	 border=&quot;0&quot; cellspacing=&quot;0&quot; cellpadding=&quot;0&quot;&gt;
	 &lt;tr&gt;
			 &lt;td height=&quot;50&quot; bgcolor=&quot;#f4f4f4&quot;&gt;
&lt;script language=JavaScript&gt;
&lt;!--
var enabled = 0; today = new Date();
var day; var date;
if(today.getDay()==0) day = &quot; 星期日&quot;
if(today.getDay()==1) day = &quot; 星期一&quot;
if(today.getDay()==2) day = &quot; 星期二&quot;
if(today.getDay()==3) day = &quot; 星期三&quot;
if(today.getDay()==4) day = &quot; 星期四&quot;
if(today.getDay()==5) day = &quot; 星期五&quot;
if(today.getDay()==6) day = &quot; 星期六&quot;
document.fgColor = &quot;000000&quot;;
date = &quot;今天是：&quot; + (today.getYear()) + &quot;年&quot; + (today.getMonth() + 1 ) + &quot;月&quot; + today.getDate() + &quot;日&quot; + day +&quot;&quot;;
document.write(date);
// --&gt;
&lt;/script&gt;
&lt;/td&gt;
	 &lt;/tr&gt;
	 &lt;tr&gt;
			 &lt;td height=&quot;50&quot;&gt;
		 &lt;div id=&quot;webjx&quot;&gt;&lt;/div&gt;
		 &lt;script&gt;setInterval(&quot;webjx.innerHTML=new Date().toLocaleString()+' 星期'+'日一二三四五六'.charAt(new Date().getDay());&quot;,1000);
		 &lt;/script&gt;&lt;/td&gt;
	 &lt;/tr&gt;
	 &lt;tr&gt;
			 &lt;td height=&quot;50&quot; bgcolor=&quot;#f4f4f4&quot;&gt;
	&lt;span id=nowDate&gt;&lt;/span&gt;
	&lt;span id=nowTime&gt;&lt;/span&gt;
			 &lt;script&gt;&lt;!--
var ns4up1 = (document.layers) ? 1 : 0;	 // browser sniffer
var ie4up1 = (document.all&amp;&amp;(navigator.appVersion.indexOf(&quot;MSIE 4&quot;) == -1)) ? 1 : 0;
var ns6up1 = (document.getElementById&amp;&amp;!document.all) ? 1 : 0;
function nowclock() {
if (!ns4up1 &amp;&amp; !ie4up1 &amp;&amp; !ns6up1) return false;
var digital = new Date();
var hours = digital.getHours();
var minutes = digital.getMinutes();
var seconds = digital.getSeconds();
var day = digital.getDate();
var month = digital.getMonth() + 1;
var year = digital.getYear();
var amOrPm = &quot;AM&quot;;
if (hours &gt; 11) amOrPm = &quot;PM&quot;;
if (hours &gt; 12) hours = hours - 12;
if (hours == 0) hours = 12;
if (minutes &lt; 10) minutes = &quot;0&quot; + minutes;
if (seconds &lt; 10) seconds = &quot;0&quot; + seconds;
if (day &lt; 10) day = &quot;0&quot; + day;
if (month &lt; 10) month = &quot;0&quot; + month;
dispTime = hours + &quot;:&quot; + minutes + &quot;:&quot; + seconds + &quot; &quot; + amOrPm;
dispDate = year + &quot;年&quot; + month + &quot;月&quot; + day+ &quot;日, &quot; ;
if (ns4up1) {
document.layers.nowTime.document.write(dispTime);
document.layers.nowTime.document.close();
document.layers.nowDate.document.write(dispDate);
document.layers.nowDate.document.close();
} else if (ns6up1){
document.getElementById(&quot;nowTime&quot;).innerHTML = dispTime;
document.getElementById(&quot;nowDate&quot;).innerHTML = dispDate;
} else if (ie4up1){
nowTime.innerHTML = dispTime;
nowDate.innerHTML = dispDate;
} setTimeout(&quot;nowclock()&quot;, 1000);
} nowclock();
//--&gt;
	&lt;/script&gt;
&lt;/td&gt;
	 &lt;/tr&gt;
&lt;/table&gt;
&lt;/body&gt;
&lt;/html&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/58/</link>
<category domain="http://www.blackliu.com/art/cat/2/"><![CDATA[WEB应用]]></category>
<pubDate>Fri, 03 Jul 2009 23:28:02 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/57/</guid>
<title><![CDATA[效果超酷的textarea的输入字数限制及提示]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;
&lt;html xmlns:mudoo&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
&lt;title&gt;POPHint &amp; statInput 整合效果&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
&lt;!--
* {padding: 0; margin: 0}
body {margin: 3em; font: 12px Tahoma; background: #EAEAEA; color: #333333; line-height: 20px}
input, textarea {font: 12px Tahoma; color: #666666; padding: 2px; border: solid 1px #DBDBDB}
textarea {padding: 5px; line-height: 20px}
p {margin: 1em 0}
ul {}
li {height: 1%; overflow: hidden; list-style-type: none}
a {color: #666666; text-decoration: none}
a:hover {color: #333333}
.r {float: right}
.l {float: left}
.b {font-weight: bold}
.gray {color: #666666; margin-top: 8px}
.light {color:#FF6600; margin: 0 5px}
.case {display: block; padding: 0 2em 2em 2em; border: solid 1px #EAEAEA; background: #FFFFFF; margin-bottom: 2em; height: 1%; overflow: hidden}
.title {display:block; padding: .5em 2em .5em 1em; margin: 0 -2em 2em -2em; font-weight: bold; color: #000000; background: #FAFAFA; border-bottom: solid 1px #EAEAEA}
.call {display:block;}
.key {display: block; width: 6em; float: left}
.type {display: block; width: 6em; float: left}
.info {padding-left: 2em}
.demo {margin-bottom: 2em}
/* popHint Style */
#popHint {position: absolute; line-height: normal}
#popHint .popLeft, #popHint .popRight, #popHint .popAngle span, #popHintText, #popHint .popIcon {background-image: url(http://www.lanrentuku.com/down/js/images/12446168500.gif)}
#popHint .popHeader {height: 1%; overflow: hidden !important; overflow /**/: visible}
#popHint .popLeft {float: left; width: 5px; height: 24px; background-position: 0 0; background-repeat: no-repeat}
#popHint .popRight {float: left; width: 5px; height: 24px; background-position: -10px -25px; background-repeat: no-repeat}
#popHint .popAngle {clear: both; position: relative; height: 10px}
#popHint .popAngle span {position: absolute; top: -3px; left: 15px; width: 7px; height: 13px; background-position: 0 -75px; background-repeat: no-repeat}
#popHintText {float: left; color: #975400; height: 19px !important; height /**/: 24px; padding: 5px 0 0 0; white-space: nowrap; background-position: 0 -50px; background-repeat: repeat-x; overflow: hidden}
#popHintText .popIcon {float: left; width: 15px; height: 10px; margin: 1px 3px 0 0}
#popHint .wrong {background-position: 0 -90px; background-repeat: no-repeat}
#popHint .right {background-position: 0 -105px; background-repeat: no-repeat}
/* 这里可以自己扩展图标.(15*10) */
--&gt;
&lt;/style&gt;
&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot;&gt;
&lt;!--
// 这里都是公用函数，挺多的...
var
// 获取元素
&#36; = function(element) {
return (typeof(element) == 'object' ? element : document.getElementById(element));
},
// 判断浏览器
brower = function() {
var ua = navigator.userAgent.toLowerCase();
var os = new Object();
os.isFirefox = ua.indexOf ('gecko') != -1;
os.isOpera = ua.indexOf ('opera') != -1;
os.isIE = !os.isOpera &amp;&amp; ua.indexOf ('msie') != -1;
os.isIE7 = os.isIE &amp;&amp; ua.indexOf ('7.0') != -1;
return os;
},
// 生成元素到refNode
appendElement = function(tagName, Attribute, strHtml, refNode) {
var cEle = document.createElement(tagName);
// 属性值
for (var i in Attribute){
cEle.setAttribute(i, Attribute[i]);
}
cEle.innerHTML = strHtml;
refNode.appendChild(cEle);
return cEle;
},
// 获取元素坐标
getCoords = function(node){
var x = node.offsetLeft;
var y = node.offsetTop;
var parent = node.offsetParent;
while (parent != null){
x += parent.offsetLeft;
y += parent.offsetTop;
parent = parent.offsetParent;
}
return {x: x, y: y};
},
// 事件操作(可保留原有事件)
eventListeners = [],
findEventListener = function(node, event, handler){
var i;
for (i in eventListeners){
if (eventListeners[i].node == node &amp;&amp; eventListeners[i].event == event &amp;&amp; eventListeners[i].handler == handler){
return i;
}
}
return null;
},
myAddEventListener = function(node, event, handler){
if (findEventListener(node, event, handler) != null){
return;
}
if (!node.addEventListener){
node.attachEvent('on' + event, handler);
}else{
node.addEventListener(event, handler, false);
}
eventListeners.push({node: node, event: event, handler: handler});
},
removeEventListenerIndex = function(index){
var eventListener = eventListeners[index];
delete eventListeners[index];
if (!eventListener.node.removeEventListener){
eventListener.node.detachEvent('on' + eventListener.event,
eventListener.handler);
}else{
eventListener.node.removeEventListener(eventListener.event,
eventListener.handler, false);
}
},
myRemoveEventListener = function(node, event, handler){
var index = findEventListener(node, event, handler);
if (index == null) return;
removeEventListenerIndex(index);
},
cleanupEventListeners = function(){
var i;
for (i = eventListeners.length; i &gt; 0; i--){
if (eventListeners[i] != undefined){
removeEventListenerIndex(i);
}
}
};
--&gt;
&lt;/script&gt;
&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot;&gt;
&lt;!--
/*======================================================
- statInput 输入限制统计
- By Mudoo 2008.5
- 长度超出_max的话就截取...貌似没有更好的办法了
======================================================*/
function statInput(e, _max, _exp) {
e= &#36;(e);
_max= parseInt(_max);
_max= isNaN(_max) ? 0 : _max;
_exp= _exp==undefined ? {} : _exp;
if(e==null || _max==0) {
alert('statInput初始化失败！');
return;
}
var
// 浏览器
_brower= brower();
// 输出对象
_objMax= _exp._max==undefined ?null : &#36;(_exp._max),
_objTotal= _exp._total==undefined ?null : &#36;(_exp._total),
_objLeft= _exp._left==undefined ?null : &#36;(_exp._left),
// 弹出提示
_hint= _exp._hint==undefined ?null : _exp._hint;
// 初始统计
if(_objMax!=null)_objMax.innerHTML= _max;
if(_objTotal!=null)_objTotal.innerHTML= 0;
if(_objLeft!=null)_objLeft.innerHTML= 0;
// 设置监听事件
// 输入这个方法比较好.
// 但是Opera下中文输入跟粘贴不能正确统计...相当BT的东西...
// 如果不考虑Opera的话就用这个吧.否则就老老实实用计时器.
if(_brower.isIE) {
myAddEventListener(e, &quot;propertychange&quot;, stat);
}else{
myAddEventListener(e, &quot;input&quot;, stat);
}
/*
// 用计时器的话就什么浏览器都支持了.
var _intDo = null;
myAddEventListener(e, &quot;focus&quot;, setListen);
myAddEventListener(e, &quot;blur&quot;, remListen);
function setListen() {
_intDo = setInterval(stat, 10);
}
function remListen() {
clearInterval(_intDo);
}
*/
// 统计函数
var _len, _olen, _lastRN, _sTop;
_olen = _len = 0;
function stat() {
_len = e.value.length;
if(_len==_olen) return;// 防止用计时器监听时做无谓的牺牲...
if(_len&gt;_max) {
_sTop = e.scrollTop;
// 避免IE最后俩字符为'\r\n'.导致崩溃...
_lastRN = (e.value.substr(_max-1, 2) == &quot;\r\n&quot;);
e.value = e.value.substr(0, (_lastRN ? _max-1 : _max));
if(_hint==true) popHint(e, &quot;悟空你也太调皮了，为师跟你说过，叫你不要输那么多字~~.&quot;);
// 解决FF老是跑回顶部
if(_brower.isFirefox) e.scrollTop = e.scrollHeight;
}
_olen = _len = e.value.length;
// 显示已输入字数
if(_objTotal!=null) _objTotal.innerHTML = _len;
// 显示剩余可输入字数
if(_objLeft!=null) _objLeft.innerHTML = (_max-_len)&lt;0 ? 0 : (_max-_len);
}
stat();
}
/*********************************************
- POPHint 弹出提示框
- By Mudoo 2008.5
**********************************************/
function popHint(obj, msg, initValues) {
var
_obj = &#36;(obj),
_objHint = &#36;(&quot;popHint&quot;),
_msg = msg,
_init = initValues;
// 初始化失败...
if(_obj==undefined || _msg==undefined || _msg==&quot;&quot;) return;
// 设置初始值
_init = _init==undefined ? {_type : &quot;wrong&quot;, _event : &quot;click&quot;} : _init;
// obj如果不可见。设置弹出对象为obj父元素
if(_obj.style.display=='none' || _obj.style.visibility=='hidden' || _obj.getAttribute('type')=='hidden') _obj = _obj.parentNode;
var
_type = null,
_event = null,
_place = getCoords(_obj),
_marTop = null,
_objText = &#36;(&quot;popHintText&quot;),
// 初始化
init = function() {
var _hint = _obj.getAttribute(&quot;hint&quot;);
if(_hint==&quot;false&quot;) return;
// 有的时候initValues不为空.但是只设置一个值...避免发生错误.再次设置初始值...
_type = _init._type==undefined ? &quot;wrong&quot; : _init._type;
_type = _type.toLowerCase();
_event = _init._event==undefined ? &quot;click&quot; : _init._event;
_event = _event.toLowerCase();
/*
******************************************
popHtml
******************************************
&lt;div id=&quot;popHint&quot;&gt;
&lt;div id=&quot;popHeader&quot;&gt;
&lt;div class=&quot;popLeft&quot;&gt;&lt;/div&gt;
&lt;div id=&quot;popHintText&quot;&gt;&lt;span class=\&quot;popIcon wrong&gt;&lt;/span&gt;请输入您的用户名！&lt;/div&gt;
&lt;div class=&quot;popRight&quot;&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div class=&quot;popAngle&quot;&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
*/
// 好了.输出...
var _Html = &quot;&lt;div id=\&quot;popHeader\&quot;&gt;&quot; +
&quot;&lt;div class=\&quot;popLeft\&quot;&gt;&lt;/div&gt;&quot; +
&quot;&lt;div id=\&quot;popHintText\&quot;&gt;&lt;/div&gt;&quot; +
&quot;&lt;div class=\&quot;popRight\&quot;&gt;&lt;/div&gt;&quot; +
&quot;&lt;/div&gt;&quot;+
&quot;&lt;div class=\&quot;popAngle\&quot;&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;&quot;
if(_objHint==null) {
_objHint = appendElement(&quot;div&quot;, {&quot;id&quot; : &quot;popHint&quot;}, _Html, document.body);
_objHint.style.display = &quot;none&quot;;
_objText = &#36;(&quot;popHintText&quot;);
}
show();
},
// 显示
show = function() {
_objHint.style.display = &quot;&quot;;
_marTop = _objHint.offsetHeight;
_msg = &quot;&lt;span class=\&quot;popIcon &quot;+ _type +&quot;\&quot;&gt;&lt;/span&gt;&quot;+ _msg;
_objText.innerHTML = _msg;
_objHint.style.left = _place.x +&quot;px&quot;;
_objHint.style.top = (_place.y-_marTop+8) +&quot;px&quot;;
// 关闭触发事件
switch(_event) {
case &quot;blur&quot; :
myAddEventListener(_obj, 'blur', hide);
break;
//default :
case &quot;click&quot; :
myAddEventListener(document, 'mousedown', hide);
break;
//这里可以自己扩展很多事件...
}
},
// 关闭
hide = function() {
_objHint.style.display = &quot;none&quot;;
_objText.innerHTML = &quot;&quot;;
// 移除关闭触发事件
myRemoveEventListener(_obj, 'blur', hide);
myRemoveEventListener(document, 'mousedown', hide);
};
init();
}
--&gt;
&lt;/script&gt;
&lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot;&gt;
&lt;!--
/*********************************************
- statInput 演示函数
*********************************************/
myAddEventListener(window, &quot;load&quot;, testStatInput);
function testStatInput(){
statInput('Test_1', 100, {_max : 'stat_max', _total : 'stat_total', _left : 'stat_left', _hint : true});
}
/*********************************************
- popHint 演示函数
*********************************************/
function testPopHint() {
if(&#36;('Test2').value==''){
popHint(&#36;('Test2'), 'Test2不能为空...', {_event : 'blur'});
&#36;('Test2').focus();
return false;
}
if(&#36;('Test3').value==''){
popHint(&#36;('Test3'), 'Test3也不能为空...', 'blur');
&#36;('Test3').focus();
return false;
}
if(&#36;('Test4').value==''){
popHint(&#36;('Test4'), 'Test4虽然看不见,但也不能为空...');
&#36;('Test4').value='填一点进去...';
return false;
}
if(&#36;('Test5').value==''){
popHint(&#36;('Test5'), 'Test5也一样...');
return false;
}
}
--&gt;
&lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div class=&quot;case&quot;&gt;
&lt;div class=&quot;title&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;r&quot;&gt;Top&lt;/a&gt;statInput 调用方法&lt;/div&gt;
&lt;div class=&quot;b&quot;&gt;statInput(Element, MaxLen, {objMax, objTotal, objLeft, Hint});&lt;/div&gt;
&lt;ul class=&quot;info gray&quot;&gt;
&lt;li&gt;&lt;span class=&quot;key&quot;&gt;Element：&lt;/span&gt;&lt;span class=&quot;type&quot;&gt;Object&lt;/span&gt;限制统计对象 (*必须)&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;key&quot;&gt;MaxLen：&lt;/span&gt;&lt;span class=&quot;type&quot;&gt;Number&lt;/span&gt;最大可输入长度 (*必须)&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;key&quot;&gt;objMax：&lt;/span&gt;&lt;span class=&quot;type&quot;&gt;Object&lt;/span&gt;显示最大输入长度对象 (*可选)&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;key&quot;&gt;objTotal：&lt;/span&gt;&lt;span class=&quot;type&quot;&gt;Object&lt;/span&gt;显示输入统计对象 (*可选)&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;key&quot;&gt;objLeft：&lt;/span&gt;&lt;span class=&quot;type&quot;&gt;Object&lt;/span&gt;显示可输入长度对象 (*可选)&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;key&quot;&gt;Hint：&lt;/span&gt;&lt;span class=&quot;type&quot;&gt;Boolean&lt;/span&gt;当长度超出上限时，是否提示 (*可选)&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class=&quot;case&quot;&gt;
&lt;div class=&quot;title&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;r&quot;&gt;Top&lt;/a&gt;statInput 演示&lt;/div&gt;
&lt;textarea name=&quot;Test_1&quot; id=&quot;Test_1&quot; rows=&quot;10&quot; style=&quot;width: 99%&quot; &gt;悟空你也太调皮了，我跟你说过，叫你不要乱扔东西， 乱扔东西这么做&hellip;&hellip; （咣当，悟空棍子掉在地上） 你看我还没有说完呢你把棍子又给扔掉了！月光宝盒是宝物，你把他扔掉会污染环境，唉，要是砸到小朋友那怎么办？就算没有砸到小朋友砸到那些花花草草也是不对的呀！&lt;/textarea&gt;
&lt;div class=&quot;gray&quot;&gt;最多可输入&lt;span id=&quot;stat_max&quot; class=&quot;b light&quot;&gt;&lt;/span&gt;，当前共&lt;span id=&quot;stat_total&quot; class=&quot;b light&quot;&gt;&lt;/span&gt;，还可输入&lt;span id=&quot;stat_left&quot; class=&quot;b light&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;case&quot;&gt;
&lt;div class=&quot;title&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;r&quot;&gt;Top&lt;/a&gt;popHint 调用方法(目前只支持单行)&lt;/div&gt;
&lt;div class=&quot;b&quot;&gt;popHint(Element, Hint, {Type, Event});&lt;/div&gt;
&lt;ul class=&quot;info gray&quot;&gt;
&lt;li&gt;&lt;span class=&quot;key&quot;&gt;Element：&lt;/span&gt;&lt;span class=&quot;type&quot;&gt;Object&lt;/span&gt;弹出对象。根据它来定位的。	 (*必须)&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;key&quot;&gt;Hint：&lt;/span&gt;&lt;span class=&quot;type&quot;&gt;String&lt;/span&gt;弹出的信息，支持HTML可是不能换行。	 (*必须)&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;key&quot;&gt;Type：&lt;/span&gt;&lt;span class=&quot;type&quot;&gt;String&lt;/span&gt;弹出类型。其实说类型是不对的。只是定义个图标而已...(可自己在样式里加很多很多&quot;类型&quot;)	 (*可选)&lt;/li&gt;
&lt;li&gt;&lt;span class=&quot;key&quot;&gt;Event：&lt;/span&gt;&lt;span class=&quot;type&quot;&gt;String&lt;/span&gt;关闭触发事件。目前只能绑定单个事件(默认click=document.onmousedown,blur=Element.onblur)	 (*可选)&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;&lt;span style=&quot;color: #333333&quot; class=&quot;b&quot;&gt;详见：&lt;a href=&quot;http://bbs.blueidea.com/thread-2856572-1-1.html&quot; target=&quot;_blank&quot; &gt;http://bbs.blueidea.com/thread-2856572-1-1.html&lt;/a&gt;&lt;/span&gt;
&lt;/div&gt;
&lt;div class=&quot;case&quot;&gt;
&lt;div class=&quot;title&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;r&quot;&gt;Top&lt;/a&gt;popHint 演示&lt;/div&gt;
&lt;ul class=&quot;demo gray&quot;&gt;
&lt;li&gt;测试blur不关闭：&lt;input name=&quot;Test1_0&quot; id=&quot;Test1_0&quot; type=&quot;text&quot; size=&quot;20&quot; maxlength=&quot;20&quot; onfocus=&quot;popHint(this, '失去焦点不会关闭提示.按TAB键看看');&quot; value=&quot;&quot; /&gt;
&lt;a href=&quot;###&quot;&gt; &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;测试blur关闭：&lt;input name=&quot;Test1_1&quot; id=&quot;Test1_1&quot; type=&quot;text&quot; size=&quot;20&quot; maxlength=&quot;20&quot; onfocus=&quot;popHint(this, '文本框失去焦点就关闭.', {_event : 'blur'});&quot; value=&quot;&quot; /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul class=&quot;demo gray&quot;&gt;
&lt;li&gt;Test2：&lt;input name=&quot;Test2&quot; id=&quot;Test2&quot; type=&quot;text&quot; size=&quot;20&quot; maxlength=&quot;20&quot; value=&quot;&quot; /&gt;&lt;/li&gt;
&lt;li&gt;Test3：&lt;input name=&quot;Test3&quot; id=&quot;Test3&quot; type=&quot;text&quot; size=&quot;20&quot; maxlength=&quot;20&quot; value=&quot;&quot; /&gt;&lt;/li&gt;
&lt;li&gt;Test4：&lt;input name=&quot;Test4&quot; id=&quot;Test4&quot; type=&quot;hidden&quot; size=&quot;20&quot; maxlength=&quot;20&quot; value=&quot;&quot; /&gt;&lt;/li&gt;
&lt;li&gt;Test5：&lt;input name=&quot;Test5&quot; id=&quot;Test5&quot; type=&quot;text&quot; size=&quot;20&quot; maxlength=&quot;20&quot; value=&quot;&quot; style=&quot;display:none&quot; /&gt;&lt;/li&gt;
&lt;li&gt;&lt;input name=&quot;&quot; type=&quot;button&quot; onclick=&quot;testPopHint();&quot; value=&quot;来测试啦&quot; /&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/57/</link>
<category domain="http://www.blackliu.com/art/cat/2/"><![CDATA[WEB应用]]></category>
<pubDate>Fri, 03 Jul 2009 23:21:18 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/56/</guid>
<title><![CDATA[鼠标经过input时的颜色发生变化]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
&lt;title&gt;表单效果&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
*{
margin:0;
padding:0;
}
body{
font-size:63%;
color:#000;
}
/*input*/
.input_on{
padding:2px 8px 0pt 3px;
height:18px;
border:1px solid #999;
background-color:#FFFFCC;
}
.input_off{
padding:2px 8px 0pt 3px;
height:18px;
border:1px solid #CCC;
background-color:#FFF;
}
.input_move{
padding:2px 8px 0pt 3px;
height:18px;
border:1px solid #999;
background-color:#FFFFCC;
}
.input_out{
/*height:16px;默认高度*/
padding:2px 8px 0pt 3px;
height:18px;
border:1px solid #CCC;
background-color:#FFF;
}
/*form*/
ul.input_test{
margin:20px auto 0 auto;
width:500px;
list-style-type:none;
}
ul.input_test li{
width:500px;
height:22px;
margin-bottom:10px;
}
.input_test label{
float:left;
padding-right:10px;
width:100px;
line-height:22px;
text-align:right;
font-size:1.4em;
}
.input_test p{
float:left;
_margin-top:-1px;
}
.input_test span{
float:left;
padding-left:10px;
line-height:22px;
text-align:left;
font-size:1.2em;
color:#999;
}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;ul class=&quot;input_test&quot;&gt;
&lt;li&gt;
&lt;label for=&quot;inp_name&quot;&gt;姓名：&lt;/label&gt;
&lt;p&gt;&lt;input id=&quot;inp_name&quot; class=&quot;input_out&quot; name=&quot;&quot; type=&quot;text&quot; onfocus=&quot;this.className='input_on';this.onmouseout=''&quot; onblur=&quot;this.className='input_off';this.onmouseout=function(){this.className='input_out'};&quot; onmousemove=&quot;this.className='input_move'&quot; onmouseout=&quot;this.className='input_out'&quot; /&gt;&lt;/p&gt;
&lt;span&gt;请输入您的姓名&lt;/span&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;label for=&quot;inp_email&quot;&gt;Email：&lt;/label&gt;
&lt;p&gt;&lt;input id=&quot;inp_email&quot; class=&quot;input_out&quot; name=&quot;&quot; type=&quot;text&quot; onfocus=&quot;this.className='input_on';this.onmouseout=''&quot; onblur=&quot;this.className='input_off';this.onmouseout=function(){this.className='input_out'};&quot; onmousemove=&quot;this.className='input_move'&quot; onmouseout=&quot;this.className='input_out'&quot; /&gt;&lt;/p&gt;
&lt;span&gt;请输入您的Email&lt;/span&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;label for=&quot;inp_web&quot;&gt;网站：&lt;/label&gt;
&lt;p&gt;&lt;input id=&quot;inp_web&quot; class=&quot;input_out&quot; name=&quot;&quot; type=&quot;text&quot; onfocus=&quot;this.className='input_on';this.onmouseout=''&quot; onblur=&quot;this.className='input_off';this.onmouseout=function(){this.className='input_out'};&quot; onmousemove=&quot;this.className='input_move'&quot; onmouseout=&quot;this.className='input_out'&quot; /&gt;&lt;/p&gt;
&lt;span&gt;请输入您的网站&lt;/span&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/body&gt;
&lt;/html&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/56/</link>
<category domain="http://www.blackliu.com/art/cat/4/"><![CDATA[应用学习]]></category>
<pubDate>Fri, 03 Jul 2009 23:18:03 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/55/</guid>
<title><![CDATA[可选择Email和用户名登录的代码]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
			 &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot;/&gt;
			 &lt;title&gt;登陆界面&lt;/title&gt;
							 &lt;style type=&quot;text/css&quot;&gt;
* {
							 margin:0;
							 padding:0;
							 font-size:12px;
							 font-weight:normal;
							 font-family:verdana, tahoma, helvetica, arial, sans-serif, &quot;宋体&quot;;
							 font-style:normal;
							 list-style-type:none;
							 text-decoration:none;
}
div#body input#fnbtn {
							 width:78px;
							 height:39px;
							 border:none;
							 cursor:pointer;
							 position:absolute;
							 top:40px;
							 left:100px;
							 background:transparent url('http://www.lanrentuku.com/down/js/images/12447121190.png') 0 -70px no-repeat;
}
div#mask {
							 position:absolute;
							 top:0;
							 left:0;
							 background:#fff;
							 filter:alpha(opacity=60);
							 -moz-opacity:0.2;
							 z-index:100;
}
div#login {
							 position:absolute;
							 top:75px;
							 left:100px;
							 width:293px;
							 z-index:200;
}
div#login h2 {
							 height:26px;
							 padding-top:3px;
							 padding-left:25px;
							 background:transparent url('http://www.lanrentuku.com/down/js/images/12447121190.png') -84px -70px no-repeat;
}
div#login h2 input {
							 height:18px;
							 width:18px;
							 float:right;
							 border:none;
							 cursor:pointer;
							 margin:2px 6px 0 0;
							 background:transparent url('http://www.lanrentuku.com/down/js/images/12447121190.png') 0 -169px no-repeat;
}
div#login h2 a {
							 display:block;
							 float:left;
							 width:83px;
							 height:26px;
							 line-height:26px;
							 text-align:center;
							 text-decoration:none;
							 color:#666;
}
div#login h2 a.cur {
							 color:#f00;
							 background:transparent url('http://www.lanrentuku.com/down/js/images/12447121190.png') 0 -187px no-repeat;
}
div#login ul {
							 padding:14px 0 18px 12px;
							 background:transparent url('http://www.lanrentuku.com/down/js/images/12447121190.png') -84px bottom no-repeat;
}
div#login ul li {
							 padding-left:60px;
							 margin-top:10px;
							 display:inline-block;
}
div#login ul li {
							 display:block;
}
div#login ul li:after {
							 content:&quot;youdian&quot;;
							 clear:both;
							 display:block;
							 height:0;
							 visibility:hidden;
}
div#login ul li tt {
							 float:left;
							 width:60px;
							 margin-left:-70px;
							 text-align:right;
							 line-height:22px;
							 color:#444;
}
div#login ul li div input.cell, div#login ul li div input.cell2 {
							 height:16px;
							 padding:2px;
							 line-height:16px;
							 width:179px;
							 border:1px #dcdcdc solid;
							 color:#666;
}
div#login ul li div input.cell2 {
							 width:50px;
} 
div#login ul li div label {
							 color:#666;
							 cursor:pointer;
}
div#login ul li div img {
							 margin-bottom:-7px;
							 margin-left:8px;
}
* html div#login ul li div img {
							 margin-bottom:-4px;
}
*+html div#login ul li div img {
							 margin-bottom:-4px;
}
div#login ul li div input#fnlogin {
							 width:59px;
							 height:21px;
							 cursor:pointer;
							 border:none;
							 margin-right:15px;
							 background:transparent url('http://www.lanrentuku.com/down/js/images/12447121190.png') 0 -148px no-repeat;
}
div#login ul li p {
							 padding-top:4px;
							 color:#f00;
}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div id=&quot;body&quot;&gt;
&lt;input id=&quot;fnbtn&quot; type=&quot;button&quot; title=&quot;&quot; /&gt;
&lt;/div&gt;&lt;div id=&quot;mask&quot; style=&quot;display:none;&quot;&gt;&lt;/div&gt;
&lt;div id=&quot;login&quot; style=&quot;display:none;&quot;&gt;
&lt;h2&gt;&lt;input id=&quot;fnquit&quot; type=&quot;button&quot; title=&quot;退出登录&quot; /&gt;&lt;a href=&quot;#&quot; class=&quot;cur&quot; name=&quot;Email&quot;&gt;Email登录&lt;/a&gt;&lt;a href=&quot;#&quot; name=&quot;用户名&quot;&gt;用户名登录&lt;/a&gt;&lt;/h2&gt;
&lt;ul&gt;&lt;form id=&quot;LoginForm&quot; name=&quot;LoginForm&quot; action=&quot;http://www.lanrentuku.com/&quot;	 method=&quot;post&quot; enctype=&quot;multipart/form-data&quot; &gt;&lt;li&gt;&lt;input id=&quot;loginType&quot; name=&quot;loginType&quot; type=&quot;hidden&quot;/&gt;&lt;tt&gt;&lt;label id=&quot;logtype&quot; for=&quot;email&quot;&gt;Email:&lt;/label&gt;&lt;/tt&gt;&lt;div&gt;&lt;input id=&quot;username&quot; name=&quot;username&quot; type=&quot;text&quot; class=&quot;cell&quot; onKeyPress=&quot;return checkSubmit(event)&quot;/&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;tt&gt;&lt;label for=&quot;password&quot;&gt;密　码:&lt;/label&gt;&lt;/tt&gt;&lt;div&gt;&lt;input id=&quot;password&quot; name=&quot;password&quot; type=&quot;password&quot; class=&quot;cell&quot; onKeyPress=&quot;return checkSubmit(event)&quot; /&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;tt&gt;&lt;/tt&gt;
&lt;div&gt;&lt;input id=&quot;reme&quot; name=&quot;rememberme&quot; type=&quot;checkbox&quot; /&gt;　&lt;label for=&quot;reme&quot;&gt;下次自动登录&lt;/label&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;&lt;tt&gt;&lt;/tt&gt; &lt;div&gt;&lt;input id=&quot;fnlogin&quot; type=&quot;button&quot;/&gt;&lt;a href=&quot;http://www.lanrentuku.com/&quot; target=&quot;_blank&quot; onclick=&quot;return checkForgetPassword()&quot;&gt;忘记密码?&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/form&gt;&lt;/ul&gt;
&lt;/div&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
function g(obj) {
							 return document.getElementById(obj);
}
var login = {
							 title:null,
							 show:function(){
															 var sWidth,sHeight;
															 sWidth = screen.width;
															 sWidth = document.body.offsetWidth;
															 sHeight=document.body.offsetHeight;
															 if (sHeight&lt;screen.height){sHeight=screen.height;}
															 g(&quot;mask&quot;).style.width = sWidth + &quot;px&quot;;
															 g(&quot;mask&quot;).style.height = sHeight + &quot;px&quot;;
															 g(&quot;mask&quot;).style.display = &quot;block&quot;;
															 g(&quot;login&quot;).style.display = &quot;block&quot;;
															 g(&quot;login&quot;).style.right = g(&quot;body&quot;).offsetLeft + &quot;px&quot;;
															 
//															 window.status = g(&quot;body&quot;).offsetLeft;
							 },
							 hide:function(){
															 g(&quot;mask&quot;).style.display = &quot;none&quot;;
															 g(&quot;login&quot;).style.display = &quot;none&quot;;
							 }
}
g(&quot;fnbtn&quot;).onclick = function(){
							 login.show();
							 this.blur();
							 this.style.backgroundPosition = &quot;0 -109px&quot;;
};
g(&quot;fnlogin&quot;).onclick = function() {
			 // The following 5 lines of code is used to get the login type &amp; pass to the form
			 // One More line of code is insert to root_index.jsp to capture the hidden value
			 if (document.getElementById(&quot;logtype&quot;).innerHTML == &quot;Email:&quot;) {
							 document.getElementById('loginType').value = 'email';
			 } else {
							 document.getElementById('loginType').value = 'mobile';		 
			 }
			 document.LoginForm.submit();
};
g(&quot;fnquit&quot;).onclick = function(){login.hide();g(&quot;fnbtn&quot;).style.backgroundPosition = &quot;0 -70px&quot;;};
var aa = g(&quot;login&quot;).getElementsByTagName(&quot;a&quot;);
var aTab = new Array();
for(var i=0; i&lt;aa.length; i++){
							 if(aa[i].parentNode.nodeName == &quot;H2&quot;){
															 aTab.push(aa[i]);
							 }
}
for(var j=0; j&lt;aTab.length; j++){
							 aTab[j].onclick = function(){
															 this.blur();
															 if (this.className != &quot;cur&quot;){
																							 for(var k=0; k&lt;aTab.length; k++){aTab[k].className = &quot;&quot;};
																							 this.className = &quot;cur&quot;
																							 g(&quot;logtype&quot;).innerHTML = this.name + &quot;:&quot;;
							 }
							 }
}
&lt;/script&gt;
&lt;script language=&quot;javascript&quot;&gt;
login.hide();
&lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/55/</link>
<category domain="http://www.blackliu.com/art/cat/2/"><![CDATA[WEB应用]]></category>
<pubDate>Fri, 03 Jul 2009 23:10:01 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/54/</guid>
<title><![CDATA[防止被IFRAME嵌套并自动跳到首页代码]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;script&gt;
if(self!=top) top.location=self.location;
&lt;/script&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>
<p>测试方法：A站全站调用此JS，然后在B站网页IFRAME嵌套A站，浏览B站嵌套页面，即会跳转到A站。</p>]]></description>
<link>http://www.blackliu.com/art/html/54/</link>
<category domain="http://www.blackliu.com/art/cat/2/"><![CDATA[WEB应用]]></category>
<pubDate>Fri, 03 Jul 2009 23:07:39 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/53/</guid>
<title><![CDATA[CSS自适应宽度按钮]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=gb2312&quot; /&gt;
&lt;title&gt;CSS自适应宽度圆角按钮 @5key.net&lt;/title&gt;
&lt;style&gt;
*{margin:0; padding:0;}
body{padding:10px; font-size:12px;}
h1{margin:0; padding:10px 0; font-size:14px; font-weight:bold;}
a{background:url(http://www.lanrentuku.com/down/js/images/12447749840.gif) left 0;	 color:#fff; text-decoration:none; height:30px; float:left; cursor:hand; margin:0 5px 0 0;}
a:hover{background:url(http://www.lanrentuku.com/down/js/images/12447749840.gif) left -30px;height:30px;}
a span{background:url(http://www.lanrentuku.com/down/js/images/12447749840.gif) right 0;	 padding:9px 8px 5px 0; margin:0 0 0 8px; float:left; height:16px;}
a:hover span{background:url(http://www.lanrentuku.com/down/js/images/12447749840.gif) right -30px; color:#000;	 padding:9px 8px 5px 0; margin:0 0 0 8px; height:16px;	 }
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;h1&gt;&lt;strong&gt;CSS自适应宽度圆角按钮&lt;/strong&gt;&lt;/h1&gt;
&lt;a href=&quot;#&quot;&gt;&lt;span&gt;首页&lt;/span&gt;&lt;/a&gt;
&lt;a href=&quot;#&quot;&gt;&lt;span&gt;不是首页&lt;/span&gt;&lt;/a&gt;
&lt;a href=&quot;#&quot;&gt;&lt;span&gt;他也许是首页&lt;/span&gt;&lt;/a&gt;
&lt;a href=&quot;#&quot;&gt;&lt;span&gt;但他一定不是首页&lt;/span&gt;&lt;/a&gt;
&lt;a href=&quot;#&quot;&gt;&lt;span&gt;好了，就这样把。别扯了~&lt;/span&gt;&lt;/a&gt;
&lt;/body&gt;
&lt;/html&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>

<p>先来看张图片：</p>
<p><img class="image" alt="image" src="http://www.lanrentuku.com/down/js/images/12447750790.gif" /></p>
<p>原理就是通过背景的左对齐和右对齐用A标签和span标签组合出一个完整的圆角矩形。再通过hover标签去滑动图片。ok，看看代码吧。</p>
<p>CSS:</p>
<p>*{margin:0; padding:0;}<br />
body{padding:10px; font-size:12px;}<br />
h1{margin:0; padding:10px 0; font-size:14px; font-weight:bold;}<br />
a{background:url(1.gif) left 0; color:#fff; text-decoration:none; height:30px; float:left; cursor:hand; margin:0 5px 0 0;}<br />
a:hover{background:url(1.gif) left -30px;height:30px;}<br />
a span{background:url(1.gif) right 0; padding:7px 8px 7px 0; margin:0 0 0 8px; float:left; height:16px;}<br />
a:hover span{background:url(1.gif) right -30px; color:#000; padding:7px 8px 7px 0; margin:0 0 0 8px; height:16px; }</p>
<p>HTML:</p>
<p>&lt;body&gt;<br />
&lt;h1&gt;&lt;strong&gt;CSS自适应宽度圆角按钮 @5key.net&lt;/strong&gt;&lt;/h1&gt;<br />
&lt;a href=&quot;#&quot;&gt;&lt;span&gt;首页&lt;/span&gt;&lt;/a&gt;<br />
&lt;a href=&quot;#&quot;&gt;&lt;span&gt;不是首页&lt;/span&gt;&lt;/a&gt;<br />
&lt;a href=&quot;#&quot;&gt;&lt;span&gt;他也许是首页&lt;/span&gt;&lt;/a&gt;<br />
&lt;a href=&quot;#&quot;&gt;&lt;span&gt;但他一定不是首页&lt;/span&gt;&lt;/a&gt;<br />
&lt;a href=&quot;#&quot;&gt;&lt;span&gt;好了，就这样把。别扯了~&lt;/span&gt;&lt;/a&gt;<br />
&lt;/body&gt;</p>
<p>用到的图片：</p>
<p><img class="image" alt="image" src="http://www.lanrentuku.com/down/js/images/12447749840.gif" /></p>]]></description>
<link>http://www.blackliu.com/art/html/53/</link>
<category domain="http://www.blackliu.com/art/cat/4/"><![CDATA[应用学习]]></category>
<pubDate>Fri, 03 Jul 2009 23:01:31 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/52/</guid>
<title><![CDATA[3种风格的AJAX左右切换内容]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[
<p><div class="runcodes"><textarea rows="12" cols="90">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;
&lt;title&gt;左右切换内容 &lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
/* Reset style */
* { margin:0; padding:0; word-break:break-all; }
body { background:#FFF; color:#333; font:12px/1.6em Helvetica, Arial, sans-serif; }
h1, h2, h3, h4, h5, h6 { font-size:1em; }
a { color:#039; text-decoration:none; }
	a:hover { text-decoration:underline; }
ul, li { list-style:none; }
fieldset, img { border:none; }
em, strong, cite, th { font-style:normal; font-weight:normal; }
#change{	 position:relative; top :20px;left:60px }
/* Hot_ranks style */
#hot_ranks { position:relative; width:190px; overflow:hidden; margin:50px; border:1px solid #E0E0E0; background:#F6F8F8;	 }
	#hot_ranks h3 { padding:8px 8px 6px 8px; font-size:14px;}
	#hot_ranks .hot_ranks_list { padding-bottom:6px; }
	#hot_ranks .normal { display:none; }
	#hot_ranks .current { display:block; }
	#hot_ranks ul li { width:95%; height:21px; overflow:hidden; margin:0 auto; line-height:20px; }
	#hot_ranks ul li em { padding:0 1px 0 3px; }
	#ranks_change_bar { position:absolute; top:8px; right:2px; }
		#ranks_change_bar a { display:block; float:left; width:27px; height:13px; overflow:hidden; margin:0 2px; background:url(http://www.lanrentuku.com/images/uppic/200808190816440.gif) no-repeat; text-indent:-9999px; cursor:pointer;}
		#ranks_change_bar #previous { background-position:0 0; }
		#ranks_change_bar #next { background-position:-27px 0; }
&lt;/style&gt;
&lt;script src=&quot;http://www.lanrentuku.com/js/jquery-1.2.6.pack.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
&lt;script language=&quot;javascript&quot; &gt;
	&#36;(function(){
					 /** 下拉框效果选项设置	 start **/
					 var changeIndex=1;
		 &#36;('#change').change(function(){
				 changeIndex = &#36;(&quot;#change&quot;).val();
		 })
		 /** 下拉框效果选项设置	 end	 **/
								 
					 var &#36;obj = &#36;('#hot_ranks ul');
		 var len	 = &#36;obj.length;
		 var i = 0;
		 &#36;(&quot;#next&quot;).click(function(){
							 i++;
				 if(i==len){
						 i = 0;
				 }
				 if(changeIndex==1){//	 这里是根据下拉框的值，来执行相应的效果。
				&#36;obj.stop(true,true).hide().eq(i).show();
				 }else if(changeIndex==2){
															 &#36;obj.stop(true,true).hide().eq(i).slideDown(400);
				 }else if(changeIndex==3){
				&#36;obj.stop(true,true).hide().eq(i).fadeIn(600);
				 }
				 return false;
		 });	
		 &#36;(&quot;#previous&quot;).click(function(){
							 i--;
				 if(i==-1){
						 i = len-1;
				 }
													 if(changeIndex==1){
				&#36;obj.stop(true,true).hide().eq(i).show();
				 }else if(changeIndex==2){
															 &#36;obj.stop(true,true).hide().eq(i).slideDown(400);
				 }else if(changeIndex==3){
				&#36;obj.stop(true,true).hide().eq(i).fadeIn(600);
				 }
				 return false;
		 });
								 
		 //滑入div 停止动画，滑出开始动画.
								 &#36;('#hot_ranks').hover(function(){
							 if(MyTime){
							 clearInterval(MyTime);
				 }
		 },function(){
													 MyTime = setInterval(function(){
				 &#36;(&quot;#next&quot;).trigger(&quot;click&quot;);
				 } , 2000);
		 })
		 //每2秒，自动切换。触发&quot;.next&quot;的click事件.
		 var MyTime = setInterval(function(){
					 &#36;(&quot;#next&quot;).trigger(&quot;click&quot;);
		 } , 2000);
	})
/*
stop(true,true):
第一个true是清除队列.
第二个true是说直接跳转到动画结束的状态.
stop(true,true).hide():
就是说，停止当前正在进行的动画，以及队列中等待的动画，
并且直接将属性设置成动画结束时的状态
*/
&lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;

效果切换：
&lt;select id=&quot;change&quot;&gt;
&lt;option value=&quot;1&quot;&gt;普通效果&lt;/option&gt;
&lt;option value=&quot;2&quot;&gt;窗帘效果&lt;/option&gt;
&lt;option value=&quot;3&quot;&gt;渐变效果&lt;/option&gt;
&lt;/select&gt;
&lt;div id=&quot;hot_ranks&quot;&gt;
	&lt;h3&gt;站点价值排行&lt;/h3&gt;
	&lt;ul class=&quot;current&quot;&gt;
		&lt;li&gt;&lt;em&gt;1&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;首支北京奥运比赛用枪入境&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;2&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;&ldquo;最稳金牌&rdquo;落选奥运阵容&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;3&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;微软否认盖茨为看奥运租房&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;4&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;金晶坐飞机被蛮横夫妇欺侮&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;5&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;俄美女展示奥运服 奥运兵马俑亮相京城装&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;6&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;五部奥运题材电影出炉 志愿者微笑迎奥运&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;7&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;奥运志愿者不乏绝世佳丽 清纯奥运引导员&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;8&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;奥运饭店正式运行 国际奥委会各部门入驻&lt;/a&gt;&lt;/li&gt;
	&lt;/ul&gt;
	&lt;ul class=&quot;normal&quot;&gt;
		&lt;li&gt;&lt;em&gt;9&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;奥运会中国最稳的十个冠军&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;10&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;女大学生怎么成了悲惨&ldquo;卡奴&rdquo;&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;11&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;80岁老母竟被儿女逼得有家难回&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;12&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;日本街头清新美女如此混搭(图)&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;13&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;视频：人眼永远看不到的真相！&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;14&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;87版红楼梦那些难忘笑靥(组图)&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;15&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;美女股神：散户就是被宠坏的人&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;16&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;我的80后老婆从绵羊变成大灰狼&lt;/a&gt;&lt;/li&gt;
	&lt;/ul&gt;
	&lt;ul class=&quot;normal&quot;&gt;
		&lt;li&gt;&lt;em&gt;17&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;马自达6轿跑全系让利2万元 新威驰全系优惠8000&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;18&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;&ldquo;致胜全系让2.8万元	 海马3现车优惠1万元&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;19&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;桑塔纳志俊优惠3000元 林荫大道优惠3万提销量&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;20&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;金晶坐飞机被蛮横夫妇欺侮&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;21&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;俄美女展示奥运服 奥运兵马俑亮相京城装&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;22&lt;/em&gt; &lt;a href=&quot;#&quot;&gt; 路拍亚洲最长悍马 强人用遥控车画大黄蜂&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;23&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;奥运志愿者不乏绝世佳丽 清纯奥运引导员&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;24&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;大开眼界的路虎悬挂车展 &ldquo;最有趣&rdquo;车名排行榜&lt;/a&gt;&lt;/li&gt;
	&lt;/ul&gt;
	&lt;ul class=&quot;normal&quot;&gt;
		&lt;li&gt;&lt;em&gt;25&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;日本街头清新美女如此混&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;26&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;女大学生怎么成了悲惨&ldquo;卡奴&rdquo;&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;27&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;美女股神：散户就是被宠坏的人&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;28&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;搭奥运会中国最稳的十个冠军&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;29&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;视频：人眼永远看不到的真相！&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;30&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;87版红楼梦那些难忘笑靥(组图)&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;31&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;80岁老母竟被儿女逼得有家难回&lt;&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;em&gt;32&lt;/em&gt; &lt;a href=&quot;#&quot;&gt;我的80后老婆从绵羊变成大灰狼&lt;/a&gt;&lt;/li&gt;
	&lt;/ul&gt;
	&lt;p id=&quot;ranks_change_bar&quot;&gt;&lt;a href=&quot;#&quot; id=&quot;previous&quot;&gt;上一页&lt;/a&gt;&lt;a href=&quot;#&quot; id=&quot;next&quot; &gt;下一页&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;					 
&lt;/body&gt;
&lt;/html&gt;</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>]]></description>
<link>http://www.blackliu.com/art/html/52/</link>
<category domain="http://www.blackliu.com/art/cat/4/"><![CDATA[应用学习]]></category>
<pubDate>Fri, 03 Jul 2009 22:58:07 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/51/</guid>
<title><![CDATA[图片不存在的时候，显示一个默认图片]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p><div class="runcodes"><textarea rows="12" cols="90">&lt;img src=&quot;noexist.gif&quot; onerror=&quot;this.src='http://www.blackliu.com/Inc/dll/nopic.gif'&quot; /&gt;</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div></p>
<p>图片不存在的时候，显示一个默认图片，通过这个方法，就可以实现当没有图片或图片丢失的情况，显示一个默认图片。以后，不用通过程序来判断图片是否存在了。</p>]]></description>
<link>http://www.blackliu.com/art/html/51/</link>
<category domain="http://www.blackliu.com/art/cat/2/"><![CDATA[WEB应用]]></category>
<pubDate>Fri, 03 Jul 2009 22:51:52 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/50/</guid>
<title><![CDATA[一漂亮的导航下拉菜单]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p>下拉菜单由于实用，所以受到人们的欢迎。看到很多社区类的网站都使用这样式的下拉菜单，于是就摘自出来效果以便学习。这类下拉菜单大致是这样的：横向布局，适合作网站导航条，鼠标放上更换菜单背景，用户体验极好，而且对各类浏览器下兼容性极好。</p>
<p><div class="runcodes"><textarea rows="12" cols="90">
&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;
&lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;
&lt;head&gt;
&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=gb2312&quot; /&gt;
&lt;title&gt;CSS菜单 - 下拉菜单&lt;/title&gt;
&lt;style&gt;
body{
background-color:white;
font-size:12px;
font-family:Arial, Helvetica, sans-serif;
margin:0px;
padding:0px;
color:white;
}
ul,li{
margin:0px;
padding:0px;
}
li{
display:inline;
list-style:none;
list-style-position:outside;
text-align:center;
font-weight:bold;
float:left;
}
a:link{
color:#336601;
text-decoration:none;
float:left;
width:100px;
padding:3px 5px 0px 5px;
}
a:visited{
color:#336601;
text-decoration:none;
float:left;
padding:3px 5px 0px 5px;
width:100px;
}
a:hover{
color:white;
float:left;
padding:3px 3px 0px 20px;
width:88px;
text-decoration:none;
background-color:#539D26;
}
a:active{
color:white;
float:left;
padding:3px 3px 0px 20px;
width:88px;
text-decoration:none;
background-color:#BD06B4;
}
#nav{
width:600px;
height:30px;
border-bottom:0px;
padding:0px 5px;
position:absolute;
z-index:1;
}
.list{
line-height:20px;
text-align:left;
padding:4px;
font-weight:normal;
}
.menu1{
width:120px;
height:auto;
margin:6px 4px 0px 0px;
border:1px solid #9CDD75;
background-color:#F1FBEC;
color:#336601;
padding:6px 0px 0px 0px;
cursor:hand;
overflow-y:hidden;
filter:Alpha(opacity=70);
-moz-opacity:0.7;
}
.menu2{
width:120px;
height:18px;
margin:6px 4px 0px 0px;
background-color:#F5F5F5;
color:#999999;
border:1px solid #EEE8DD;
padding:6px 0px 0px 0px;
overflow-y:hidden;
cursor:hand;
}
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div id=&quot;nav&quot;&gt;
	&lt;ul&gt;
	&lt;li class=&quot;menu2&quot; onMouseOver=&quot;this.className='menu1'&quot; onMouseOut=&quot;this.className='menu2'&quot;&gt;我的首页 
	&lt;div class=&quot;list&quot;&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的首页&lt;/a&gt;&lt;br&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的日志&lt;/a&gt;&lt;br&gt;
	 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的日志&lt;/a&gt;&lt;br&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的相册&lt;/a&gt;&lt;br&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的收藏&lt;/a&gt;&lt;br&gt;
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li class=&quot;menu2&quot; onMouseOver=&quot;this.className='menu1'&quot; onMouseOut=&quot;this.className='menu2'&quot;&gt;社区圈子
	&lt;div class=&quot;list&quot;&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的首页&lt;/a&gt;&lt;br&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的日志&lt;/a&gt;&lt;br&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的相册&lt;/a&gt;&lt;br&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的收藏&lt;/a&gt;&lt;br&gt;
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li class=&quot;menu2&quot; onMouseOver=&quot;this.className='menu1'&quot; onMouseOut=&quot;this.className='menu2'&quot;&gt;我的短信 
	&lt;div class=&quot;list&quot;&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的相册&lt;/a&gt;&lt;br&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的收藏&lt;/a&gt;&lt;br&gt;
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li class=&quot;menu2&quot; onMouseOver=&quot;this.className='menu1'&quot; onMouseOut=&quot;this.className='menu2'&quot;&gt;账户管理 
	&lt;div class=&quot;list&quot;&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的首页&lt;/a&gt;&lt;br&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的日志&lt;/a&gt;&lt;br&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的相册&lt;/a&gt;&lt;br&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的收藏&lt;/a&gt;&lt;br&gt;
	 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的日志&lt;/a&gt;&lt;br&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的相册&lt;/a&gt;&lt;br&gt;
							 &lt;a href=&quot;http://www.blackliu.com&quot;&gt;我的收藏&lt;/a&gt;&lt;br&gt;
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;/ul&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</textarea><input onclick="runcode(this)" Name="button" type="button" value="运行代码"><input onclick="copycode(this)" Name="button" type="button" value="复制代码"><span>提示：可以先修改部分代码后再运行</span></div><br />
</p>]]></description>
<link>http://www.blackliu.com/art/html/50/</link>
<category domain="http://www.blackliu.com/art/cat/2/"><![CDATA[WEB应用]]></category>
<pubDate>Tue, 12 May 2009 17:16:33 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/49/</guid>
<title><![CDATA[网站首页head区代码规范]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p>head区是指首页HTML代码的&lt;head&gt;和&lt;/head&gt;之间的内容。 <br />
必须加入的标签 <br />
<br />
1.公司版权注释 <br />
&lt;!--- The site is designed by Maketown,Inc 06/2000 ---&gt; <br />
<br />
2.网页显示字符集 <br />
简体中文：&lt;META HTTP-EQUIV=&quot;Content-Type&quot; CONTENT=&quot;text/html; charset=gb2312&quot;&gt; <br />
繁体中文：&lt;META HTTP-EQUIV=&quot;Content-Type&quot; CONTENT=&quot;text/html; charset=BIG5&quot;&gt; <br />
英 语：&lt;META HTTP-EQUIV=&quot;Content-Type&quot; CONTENT=&quot;text/html; charset=iso-8859-1&quot;&gt; <br />
<a onfocus="undefined" name="entrymore"></a><br />
3.网页制作者信息 <br />
&lt;META name=&quot;author&quot; content=&quot;hhlong.com&quot;&gt; <br />
<br />
4.网站简介 <br />
&lt;META NAME=&quot;DESCRIPTION&quot; CONTENT=&quot;xxxxxxxxxxxxxxxxxxxxxxxxxx&quot;&gt; <br />
<br />
5.搜索关键字 <br />
&lt;META NAME=&quot;keywords&quot; CONTENT=&quot;xxxx,xxxx,xxx,xxxxx,xxxx,&quot;&gt; <br />
<br />
6.网页的css规范 <br />
&lt;LINK href=&quot;style/style.css&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot;&gt; <br />
<br />
7.网页标题 <br />
&lt;title&gt;xxxxxxxxxxxxxxxxxx&lt;/title&gt; <br />
<br />
.可以选择加入的标签 <br />
<br />
1.设定网页的到期时间。一旦网页过期，必须到服务器上重新调阅。 <br />
&lt;META HTTP-EQUIV=&quot;expires&quot; CONTENT=&quot;Wed, 26 Feb 1997 08:21:57 GMT&quot;&gt; <br />
<br />
2.禁止浏览器从本地机的缓存中调阅页面内容。 <br />
&lt;META HTTP-EQUIV=&quot;Pragma&quot; CONTENT=&quot;no-cache&quot;&gt; <br />
<br />
3.用来防止别人在框架里调用你的页面。 <br />
&lt;META HTTP-EQUIV=&quot;Window-target&quot; CONTENT=&quot;_top&quot;&gt; <br />
<br />
4.自动跳转。 <br />
&lt;META HTTP-EQUIV=&quot;Refresh&quot; CONTENT=&quot;5;URL=http://www.hhlong.com&quot;&gt; <br />
5指时间停留5秒。 <br />
<br />
5.网页搜索机器人向导.用来告诉搜索机器人哪些页面需要索引，哪些页面不需要索引。 <br />
&lt;META NAME=&quot;robots&quot; CONTENT=&quot;none&quot;&gt; <br />
CONTENT的参数有all,none,index,noindex,follow,nofollow。默认是all。 <br />
<br />
6.收藏夹图标 <br />
&lt;link rel = &quot;Shortcut Icon&quot; href=&quot;favicon.ico&quot;&gt; <br />
<br />
所有的javascript的调用尽量采取外部调用. <br />
&lt;SCRIPT LANGUAGE=&quot;javascript&quot; SRC=&quot;script/xxxxx.js&quot;&gt;&lt;/SCRIPT&gt;</p>]]></description>
<link>http://www.blackliu.com/art/html/49/</link>
<category domain="http://www.blackliu.com/art/cat/2/"><![CDATA[WEB应用]]></category>
<pubDate>Sat, 04 Apr 2009 20:29:11 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/48/</guid>
<title><![CDATA[Access转SqlServer的注意事项]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<p>1、自动增加字段需要重写。在access中经常使用的自动编号字段，导入到mssql后，他并不是自增型的int，需要手工设置，把导入后的自动编号字段的标识的&ldquo;否&rdquo;改为&ldquo;是&rdquo;，&ldquo;种子&rdquo;和&ldquo;递增量&rdquo;都为&ldquo;1&rdquo;，才能成为自动编号。<br />
<br />
2、所有的默认值都丢失了。主要是数字类型和日期类型<br />
<br />
3、所有now()，time()，date()要改成getdate()<br />
<br />
4、所有datediff('d', time1, time2)要改成datediff(day, time1, time2)<br />
<br />
5、所有datediff('ww', time1, time2)要改成datediff(week, time1, time2)<br />
<br />
6、所有datediff('d', time1, time2)要改成datediff(day, time1, time2)<br />
<br />
7、在mssql server中，有许多保留字，在access中是没有的，当你把数据导入到mssql的时候，问题就出来了。mssql在导入的时候，会自动给这些字段（包括数据库中的表名）加上&ldquo;[字段名]&rdquo;，因此，你必须修改你的脚本，把相应的字段名字（或者表名字）加上中括号，或改变字段名字为不是mssql的保留字<br />
<br />
8、在用access关于时间的使用，大家喜欢使用&ldquo;select * from aaaa while time=&quot;&amp;now()&rdquo;这样的sql语句，然而，在mssql中没有&ldquo;now()&rdquo;这个函数，而是使用&ldquo;getdate()&rdquo;，所以，所有的sql语句中的&ldquo;now()&rdquo;必须换成&ldquo;getdate()&rdquo;。<br />
<br />
9、日期函数不相同，在对ACCESS数据库处理中，可用date()、time()等函数，但对<br />
SQL SERVER数据库处理中，只能用datediff,dateadd等函数，而不能用date()、time()等函数。<br />
<br />
10、转化时，跟日期有关的字段，SQL SERVER默认为smalldatetime型，我们最好将它变为datetime型，因为datetime型的范围比smalldatetime型大。有时用smalldatetime型时，转化失败，而用datetime型时，转化成功<br />
<br />
11、isnull(rowname)要改成rowname = null<br />
<br />
12、CursorType要改成1,也就是打开数据库时要给出第一个数字参数为1，否则记录可能显示不完整<br />
<br />
13、备注类型要通过cast(column as varchar)来使用<br />
<br />
14、true/false类型不能使用，要变为1/0<br />
<br />
15、对此两种数据库进行操作的sql语句不全相同，例如：在对ACCESS数据库进行删除纪录时用：&quot;delete * from user where ,而对SQL SERVER数据库进行删除是用：&quot;delete user where .<br />
<br />
16、在对ACCESS数据库处理中,sql语句中直接可以用一些VB的函数，像cstr()函数，而对SQL SERVER数据库处理中，却不能用<br />
<br />
17、在access的sql语句中的时间使用变量查询的时候，大家一般使用&quot;select * from aaaa while time=#&quot;&amp;变量名&amp;&quot;#&quot;，在mssql中是不行的，他的语法是&ldquo;select * from aaaa while time='&quot;&amp;变量名&amp;&quot;'&quot;&rdquo;。（意思是让你把日期时间变量当成字符串来使用，呵呵~~~）<br />
<br />
18、原来ASP里的&ldquo;Delete * FROM &hellip;&hellip;&rdquo;要改为&ldquo;Delete FROM &hellip;&hellip;&rdquo;<br />
<br />
19、有可能rs.update失败，修改成update 表名 set 字段=&lsquo;值&rsquo; 这样通过（遇到的情况，提示为：<br />
Microsoft OLE DB Provider for SQL Server 错误 '80040e38' 乐观并发检查失败。已在此游标之外修改了该行。 <br />
<br />
20、access里面除法可以使用&quot;\&quot;或者&quot;/&quot;，MSSQL里面只能使用&quot;/&quot;<br />
<br />
21、请在SqlServer中建立主键<br />
（错误可能是：ADODB.Recordset 错误 '800a0cb3' <br />
<br />
当前 Recordset 不支持更新。这可能是提供者限制的，也可能是选定的锁定类型限制的。 <br />
<br />
22、如果还有问题用：rs.open sql,conn,3,2试试</p>]]></description>
<link>http://www.blackliu.com/art/html/48/</link>
<category domain="http://www.blackliu.com/art/cat/4/"><![CDATA[应用学习]]></category>
<pubDate>Sat, 04 Apr 2009 17:45:33 +0800</pubDate>
</item>
<item>
<guid>http://www.blackliu.com/art/html/47/</guid>
<title><![CDATA[Asp测网速代码(带进度条)]]></title>
<author><![CDATA[blackliu@foxmail.com(老黑)]]></author>
<description><![CDATA[<div class="UBBContent">代码如下，另存为asp文件，请在你的服务器运行就可以了<br />
<br />
&lt;%<br />
Response.Expires = 0<br />
Response.Expiresabsolute = Now() - 1<br />
Response.AddHeader &quot;pragma&quot;,&quot;no-cache&quot;<br />
Response.AddHeader &quot;cache-control&quot;,&quot;private&quot;<br />
Response.CacheControl = &quot;no-cache&quot;<br />
%&gt;&lt;html&gt;<br />
&lt;head&gt;<br />
&lt;title&gt;网速测试-51windows.Net&lt;/title&gt;<br />
&lt;meta http-equiv=&quot;content-type&quot; content=&quot;text/html; charset=gb2312&quot;&gt;<br />
&lt;body style=&quot;cursor:wait;&quot;&gt;<br />
&lt;p style=&quot;font-size:18pt;&quot;&gt;&lt;B&gt;网速测试&lt;/B&gt;&lt;/p&gt;<br />
&lt;p id=&quot;t&quot; style=&quot;font-size:16pt;&quot;&gt;正在测试，请稍候...&lt;/p&gt;<br />
&lt;span style=&quot;width:300;height:16px;background-color:gray;&quot;&gt;&lt;span id=&quot;p&quot; style=&quot;width:0;height:16px;background-color:red;&quot;&gt;&lt;/span&gt;&lt;/span&gt;<br />
&lt;script language=&quot;javascript&quot;&gt;st = new Date();function &#36;(p){document.getElementById(&quot;t&quot;).innerHTML=&quot;正在测试，请稍候...(&quot;+p+&quot;%)&quot;;document.getElementById(&quot;p&quot;).style.width=p*3;}&lt;/script&gt;<br />
&lt;%<br />
defaultfs = 200'数据默认大小(K)<br />
minfs = 100'数据最小值<br />
maxfs = 500'数据最高值<br />
fs = Request(&quot;s&quot;)<br />
if len(fs) = 0 or isnumeric(fs) = false then fs = defaultfs<br />
if int(fs) &gt; maxfs then fs = maxfs<br />
if int(fs) &lt; minfs then fs = minfs<br />
for a=1 to fs%&gt;&lt;!--&#36;%^)!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()!@#&#36;%^&amp;*()--&gt;&lt;script language=javascript&gt;&#36;(&lt;%=int(a*100/fs)%&gt;)&lt;/script&gt;&lt;%next%&gt;<br />
&lt;script language=javascript&gt;<br />
et=new Date();ds=&lt;%=fs%&gt;;s=Math.round(ds*1000/(et-st)*10)/10;document.body.style.cursor='default';<br />
nextsize=&lt;%=fs%&gt;;if(s&gt;100){nextsize=&lt;%=maxfs%&gt;;}else if(s&lt;20){nextsize=&lt;%=minfs%&gt;;}<br />
document.getElementById(&quot;t&quot;).innerHTML=&quot;测试完毕。您的速度：&lt;font color='red'&gt;&quot;+s+&quot;&lt;/font&gt;(K/秒) [&lt;a href='?s=&quot;+nextsize+&quot;&amp;t=&quot;+Math.random()+&quot;'&gt;重测&lt;/a&gt;]&quot;;&lt;/script&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;</div>
]]></description>
<link>http://www.blackliu.com/art/html/47/</link>
<category domain="http://www.blackliu.com/art/cat/1/"><![CDATA[ASP编程]]></category>
<pubDate>Sat, 04 Apr 2009 17:44:30 +0800</pubDate>
</item>
</channel>
</rss>
