var calendar=new Object(); calendar.module=new Object(); calendar.module.mouse=new Object(); calendar.left=new Object(); calendar.left.test=new Object(); calendar.left.test.gray=/color_gray/gi; calendar.date=function(){ return $_DOM('_cdate').innerHTML.replace(/月/gi,'').split('年'); } calendar.module.mouse.out=function(t,fx){ if (fx==0){ t.className='left'; }else if (fx==1){ t.className='right'; } } calendar.module.mouse.over=function(t,fx){ if (fx==0){ t.className='lefting'; }else if (fx==1){ t.className='righting'; } } calendar.module.mouse.click=function(fx){ this.url="../Ajax/board_module_calendar.php"; this.parameters="k="+$_DOM('boardid').value+"&f="+fx+"&ds="+$_DOM('_calendar_date').value; //参数 this.sunday=$_DOM('_calendar_date').value; //切换前的星期日日期(2010-10-25) this.mothed="post"; //提交方式 this.ajax=new Ajax.Request(this.url,{mothed:this,mothed:this.mothed,parameters:this.parameters,onComplete:this.returned}); } calendar.module.mouse.returned=function(q){ var dat,daf,cyear,span,j; var str=q.responseText.split('||'); //获取返回字符串并拆分 str[0]=str[0].split(','); //拆分各日期(周日到周六) var cdate=str[0][0].split('-'); //当前切换的星期日日期(10-25) $_DOM('_calendar_date').value=str[1]+'-'+cdate[0]+'-'+cdate[1]; //当前切换的星期日日期(2010-10-25) for (var i=0;i<str[0].length;i++){ span=$_DOM('calendar_module_listof'+i); span.innerHTML=str[0][i]; //更新表格第一列的日期 dat=span.innerHTML.split('-'); //显示的日期(10-25) daf=$_DOM('_calendar_defaultdate').value.split('-'); //当前日期(2010-10-25) //获取当前显示日期的年份 cyear=Number(str[1]); if (cdate[0]==12 && dat[0]==1){ //若为第二年 cyear+=1; } //将当前日期背景改为蓝色 span=$_DOM('calendar_module_tr'+i); for (j=0;j<3;j++) daf[j]=Number(daf[j]); for (j=0;j<2;j++) dat[j]=Number(dat[j]); if (daf[0]==cyear && daf[1]==dat[0] && daf[2]==dat[1]){ span.className='select'; }else{ span.className=''; } } $_DOM('rilicrrqi').innerHTML=str[1]+'年'+cdate[0]+'月'; //更新灰色标题栏年和月 } calendar.onload=function(){ this.left.update(); } calendar.left.update=function(){ var cd=calendar.date(); var span,a,m; var myDate=new Date(cd[0],cd[1]-1,1); var gd=myDate.getDay(); //获取这个月1日的星期数 if (gd==1) gd=8; var v=24*60*60*1000; var start_date=new Date(myDate-gd*v); var cdk=$_DOM('_cday').innerHTML.split(','); for (var i=0;i<42;i++){ a=start_date.getDate(); span=$_DOM('__'+String(i)); span.innerHTML=a; m=start_date.getMonth()+1; span.className=(cd[1]==m)?"":"color_gray"; //当前日高亮显示 if (start_date.getFullYear()==Number(cdk[0]) && m==Number(cdk[1]) && a==Number(cdk[2]) && (!this.test.gray.test(span.className))){ if (span.className==""){ span.className="istoday"; }else{ span.className+=" istoday"; } } span.onclick=function(){calendar.onclick(this.id);}; start_date=new Date(start_date-(-1)*v); } } calendar.onturnpage=function(ik){ var cd=calendar.date(); if (ik==1){ cd[1]--; if (cd[1]<1){ cd[1]=12; cd[0]--; } }else if (ik==2){ cd[1]++; if (cd[1]>12){ cd[1]=1; cd[0]++; } } var str=String(cd[0])+"年"+String(cd[1])+"月"; sed($_DOM('_cdate'),str); sed($_DOM('__cdate'),str); calendar.left.update(); } calendar.onclick=function(ik){ var span=$_DOM(ik); if (this.left.test.gray.test(span.className)){ this.onturnpage((Number(span.id.replace(/__/gi,''))<20)?1:2); }else{ } }
|