自己写的JS日期

来源:互联网 发布:nginx rtmp 延时配置 编辑:程序博客网 时间:2024/04/30 09:19
// JavaScript Document
 var time =0;
   var left="";
   var right="";
   var flag = false;
   var now = (new Date()).getDate();
   var y,m;
   function up()
   {
      time--;
        document.getElementById("date").innerHTML = createDateTable();
   }
   function down()
   {
     time++;
       document.getElementById("date").innerHTML = createDateTable();
   }
 function showDate()
 {
 time=0;
    document.getElementById("date").innerHTML = createDateTable();
     document.getElementById("date").style.display="";
 }
 function closeDate()
 {
    document.getElementById("date").style.display="none";
 }
 function createDate()
 {
 var dateObj;
 if(time==0)
 {
  dateObj = new Date();
   y = dateObj.getYear();
   m = dateObj.getMonth();
   flag = true;
  }
  else
  {
  flag = false;
   dateObj = new Date();
   year = dateObj.getYear()+2000-100-1900;
   month = dateObj.getMonth()+1;
   month = month+time;
   if(month==0)
   {
     month = 12;
     year = year -1;
   }
   if(month==13)
   {
     month = 1;
     year = year +1;
   }
 //  alert(year+"/"+month+"/"+1);
    y = (new Date(year+"/"+month+"/"+1)).getYear();
   m = (new Date(year+"/"+month+"/"+1)).getMonth();
  return new Date(year+"/"+month+"/"+1);
  }
  return dateObj;
 }
 function createDateTable()
 {
  dateObj= createDate();
  if(flag)
  {
     left ="<font size='5' color=red><u><b>"
     right="</b></u></font>";
  }else{
   left="";
   right="";
  }
  year = dateObj.getYear()-100+2000-1900;
  month = dateObj.getMonth()+1;
  var  monthDay = new  Array(0,31,28,31,30,31,30,31,31,30,31,30,31);
 if(year%400==0||(year%4==0&&year%100!=0))
  monthDay[2]=29; 
  var days;
     if(month==12){
  days = monthDay[month-12+1];
  }else
  {
   days = monthDay[month];
  }
  var dateTable = "<table border='1' width='400'><tr><td align='center' bgcolor='#B5C773'><div onclick='up()'  onmousemove='mouseChange(this)'><font color='#FFFFFF'>上一月</font></div></td>"+
  "<td  colspan =5  align='center' width='250' bgcolor='#608538'><font color='#FFFFFF'><b>"+year+"年"+month+
  "月"+"</font></b></td><td align='center' bgcolor='#B5C773'><div onclick='down()'  onmousemove='mouseChange(this)'><font color='#FFFFFF'>下一月</font></div></td></tr>"+
  "<tr bgcolor='#E0FDC3'bgcolor='#E0FDC3'><td><font color='#999999'>周日</font>"+
  "</td><td><font color='#999999'>周一</font></td><td><font color='#999999'>周二<font>"+
  "</td><td><font color='#999999'>周三</font></td><td><font color='#999999'>周四</font>"+
  "</td><td><font color='#999999'>周五</font>"+
  "</td><td><font color='#999999'>周六</font></td></tr>"
  + getDay(year,month,days)+
  "<tr  bgcolor='#608538'><td colspan='6' align='center'><b><font color='#FFFFFF'>Soul Eater</font></b></td>"+
  "<td align='center'><img src='image/x.jpg' onclick='closeDate()' onmousemove='mouseChange(this)'></img></td></tr></table>";
  return dateTable;
 }
 function getDay(year,month,day)
 {  
    dateEnd = year + "/"+month+"/"+day;
    dateBegin = year + "/"+month+"/"+1;
       var begin = new Date(dateBegin);
       var end = new Date(dateEnd);
       var week1 = new Array(7);
       var week2 = new Array(7);
       var week3 = new Array(7);
       var week4 = new Array(7);
       var week5 = new Array(7);
       var week6 = new Array(7);
       var o=0;
       for(i=0;i<7;i++)
       {
        if(i<begin.getDay())
        {
          week1[i]="";
        }else
        {
          o++;
          week1[i]=o;
        }
       }
       for(i=0;i<7;i++)
       {
         week2[i]=week1[6]+i+1;
       }
         for(i=0;i<7;i++)
       {
         week3[i]=week2[6]+i+1;
       }
         for(i=0;i<7;i++)
       {
         week4[i]=week3[6]+i+1;
       }
         for(i=0;i<7;i++)
       {
          if(week4[6]+i+1<=end.getDate())
          {
           week5[i]=week4[6]+i+1;
          }else
          {
            week5[i]="";
          }
       }
       if(week5[6]!=""&&week5[6]!=end.getDate())
       {
            for(i=0;i<7;i++)
       {
          if(week5[6]+i+1<=end.getDate())
          {
           week6[i]=week5[6]+i+1;
          }else
          {
            week6[i]="";
          }
       }
       }
       else
       {
       for(i=0;i<7;i++)
        week6[i]="";
       }
       var strs ="<tr  bgcolor='#EEFFED'>";
       for(i=0;i<week1.length;i++)
       {
      // strs = strs +","+week1[i];
        if(week1[i]=="")
          strs=strs+"<td> </td>";
         else
         {
         if(now==week1[i])
           strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+left+week1[i]+right+"</div></td>";
           else
          strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+week1[i]+"</div></td>";
          }
       }
       strs=strs+"</tr><tr bgcolor='#EEFFED'>";
        for(i=0;i<week2.length;i++)
       {
                if(now==week2[i])
           strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+left+week2[i]+right+"</div></td>";
           else
         strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+week2[i]+"</div></td>";
       }
         strs=strs+"</tr><tr bgcolor='#EEFFED'>";
        for(i=0;i<week3.length;i++)
       {
                if(now==week3[i])
           strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+left+week3[i]+right+"</div></td>";
           else
          strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+week3[i]+"</div></td>";
       }
          strs=strs+"</tr><tr bgcolor='#EEFFED'>";
        for(i=0;i<week4.length;i++)
       {
                if(now==week4[i])
           strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+left+week4[i]+right+"</div></td>";
           else
         strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+week4[i]+"</div></td>";
       }
          strs=strs+"</tr><tr bgcolor='#EEFFED'>";
        for(i=0;i<week5.length;i++)
       {
        if(week5[i]=="")
        strs=strs+"<td> </td>";
         else{
                  if(now==week5[i])
           strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+left+week5[i]+right+"</div></td>";
           else
            strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+week5[i]+"</div></td>";
            }
       }
         strs = strs+"</tr><tr bgcolor='#EEFFED'>";
          for(i=0;i<week6.length;i++)
       {
        if(week6[i]=="")
        strs=strs+"<td> </td>";
         else{
                  if(now==week6[i])
           strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+left+week6[i]+right+"</div></td>";
           else
            strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+week6[i]+"</div></td>";
       }
       }
       return strs;
 }
 function showDateOnText(div)
 {
  var text = div.innerHTML;
  if(text.length>5)
  {
   text = text.substring(29,text.lastIndexOf("B")-2);
  }
  var st = (y-100+2000-1900)+"-"+(m+1)+"-"+text;
      document.getElementById("text").value=st;
      document.getElementById("date").style.display="none";
 }
 function mouseChange(sth)
 {
  sth.style.cursor="hand";
 } var time =0;
   var left="";
   var right="";
   var flag = false;
   var now = (new Date()).getDate();
   var y,m;
   function up()
   {
      time--;
        document.getElementById("date").innerHTML = createDateTable();
   }
   function down()
   {
     time++;
       document.getElementById("date").innerHTML = createDateTable();
   }
 function showDate()
 {
 time=0;
    document.getElementById("date").innerHTML = createDateTable();
     document.getElementById("date").style.display="";
 }
 function closeDate()
 {
    document.getElementById("date").style.display="none";
 }
 function createDate()
 {
 var dateObj;
 if(time==0)
 {
  dateObj = new Date();
   y = dateObj.getYear();
   m = dateObj.getMonth();
   flag = true;
  }
  else
  {
  flag = false;
   dateObj = new Date();
   year = dateObj.getYear()+2000-100-1900;
   month = dateObj.getMonth()+1;
   month = month+time;
   if(month==0)
   {
     month = 12;
     year = year -1;
   }
   if(month==13)
   {
     month = 1;
     year = year +1;
   }
 //  alert(year+"/"+month+"/"+1);
    y = (new Date(year+"/"+month+"/"+1)).getYear();
   m = (new Date(year+"/"+month+"/"+1)).getMonth();
  return new Date(year+"/"+month+"/"+1);
  }
  return dateObj;
 }
 function createDateTable()
 {
  dateObj= createDate();
  if(flag)
  {
     left ="<font size='5' color=red><u><b>"
     right="</b></u></font>";
  }else{
   left="";
   right="";
  }
  year = dateObj.getYear()-100+2000-1900;
  month = dateObj.getMonth()+1;
  var  monthDay = new  Array(0,31,28,31,30,31,30,31,31,30,31,30,31);
 if(year%400==0||(year%4==0&&year%100!=0))
  monthDay[2]=29; 
  var days;
     if(month==12){
  days = monthDay[month-12+1];
  }else
  {
   days = monthDay[month];
  }
  var dateTable = "<table border='1' width='400'><tr><td align='center' bgcolor='#B5C773'><div onclick='up()'  onmousemove='mouseChange(this)'><font color='#FFFFFF'>上一月</font></div></td>"+
  "<td  colspan =5  align='center' width='250' bgcolor='#608538'><font color='#FFFFFF'><b>"+year+"年"+month+
  "月"+"</font></b></td><td align='center' bgcolor='#B5C773'><div onclick='down()'  onmousemove='mouseChange(this)'><font color='#FFFFFF'>下一月</font></div></td></tr>"+
  "<tr bgcolor='#E0FDC3'bgcolor='#E0FDC3'><td><font color='#999999'>周日</font>"+
  "</td><td><font color='#999999'>周一</font></td><td><font color='#999999'>周二<font>"+
  "</td><td><font color='#999999'>周三</font></td><td><font color='#999999'>周四</font>"+
  "</td><td><font color='#999999'>周五</font>"+
  "</td><td><font color='#999999'>周六</font></td></tr>"
  + getDay(year,month,days)+
  "<tr  bgcolor='#608538'><td colspan='6' align='center'><b><font color='#FFFFFF'>Soul Eater</font></b></td>"+
  "<td align='center'><img src='image/x.jpg' onclick='closeDate()' onmousemove='mouseChange(this)'></img></td></tr></table>";
  return dateTable;
 }
 function getDay(year,month,day)
 {  
    dateEnd = year + "/"+month+"/"+day;
    dateBegin = year + "/"+month+"/"+1;
       var begin = new Date(dateBegin);
       var end = new Date(dateEnd);
       var week1 = new Array(7);
       var week2 = new Array(7);
       var week3 = new Array(7);
       var week4 = new Array(7);
       var week5 = new Array(7);
       var week6 = new Array(7);
       var o=0;
       for(i=0;i<7;i++)
       {
        if(i<begin.getDay())
        {
          week1[i]="";
        }else
        {
          o++;
          week1[i]=o;
        }
       }
       for(i=0;i<7;i++)
       {
         week2[i]=week1[6]+i+1;
       }
         for(i=0;i<7;i++)
       {
         week3[i]=week2[6]+i+1;
       }
         for(i=0;i<7;i++)
       {
         week4[i]=week3[6]+i+1;
       }
         for(i=0;i<7;i++)
       {
          if(week4[6]+i+1<=end.getDate())
          {
           week5[i]=week4[6]+i+1;
          }else
          {
            week5[i]="";
          }
       }
       if(week5[6]!=""&&week5[6]!=end.getDate())
       {
            for(i=0;i<7;i++)
       {
          if(week5[6]+i+1<=end.getDate())
          {
           week6[i]=week5[6]+i+1;
          }else
          {
            week6[i]="";
          }
       }
       }
       else
       {
       for(i=0;i<7;i++)
        week6[i]="";
       }
       var strs ="<tr  bgcolor='#EEFFED'>";
       for(i=0;i<week1.length;i++)
       {
      // strs = strs +","+week1[i];
        if(week1[i]=="")
          strs=strs+"<td> </td>";
         else
         {
         if(now==week1[i])
           strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+left+week1[i]+right+"</div></td>";
           else
          strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+week1[i]+"</div></td>";
          }
       }
       strs=strs+"</tr><tr bgcolor='#EEFFED'>";
        for(i=0;i<week2.length;i++)
       {
                if(now==week2[i])
           strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+left+week2[i]+right+"</div></td>";
           else
         strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+week2[i]+"</div></td>";
       }
         strs=strs+"</tr><tr bgcolor='#EEFFED'>";
        for(i=0;i<week3.length;i++)
       {
                if(now==week3[i])
           strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+left+week3[i]+right+"</div></td>";
           else
          strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+week3[i]+"</div></td>";
       }
          strs=strs+"</tr><tr bgcolor='#EEFFED'>";
        for(i=0;i<week4.length;i++)
       {
                if(now==week4[i])
           strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+left+week4[i]+right+"</div></td>";
           else
         strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+week4[i]+"</div></td>";
       }
          strs=strs+"</tr><tr bgcolor='#EEFFED'>";
        for(i=0;i<week5.length;i++)
       {
        if(week5[i]=="")
        strs=strs+"<td> </td>";
         else{
                  if(now==week5[i])
           strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+left+week5[i]+right+"</div></td>";
           else
            strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+week5[i]+"</div></td>";
            }
       }
         strs = strs+"</tr><tr bgcolor='#EEFFED'>";
          for(i=0;i<week6.length;i++)
       {
        if(week6[i]=="")
        strs=strs+"<td> </td>";
         else{
                  if(now==week6[i])
           strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+left+week6[i]+right+"</div></td>";
           else
            strs=strs+"<td><div onclick='showDateOnText(this)'  onmousemove='mouseChange(this)'>"+week6[i]+"</div></td>";
       }
       }
       return strs;
 }
 function showDateOnText(div)
 {
  var text = div.innerHTML;
  if(text.length>5)
  {
   text = text.substring(29,text.lastIndexOf("B")-2);
  }
  var st = (y-100+2000-1900)+"-"+(m+1)+"-"+text;
      document.getElementById("text").value=st;
      document.getElementById("date").style.display="none";
 }
 function mouseChange(sth)
 {
  sth.style.cursor="hand";
 }
原创粉丝点击