fei 发表于 2007-4-27 11:25:51

***综合类***最新款式的万年历

把下列代码加到网页的<body></body>标签之间 从google下载我的照片管理软件
要完成此效果把如下代码加入到<body>区域中

<script language="javascript">
<!-- for sucky browsers

months = new array(12);
months = "一月";
months = "二月";
months = "三月";
months = "四月";
months = "五月";
months = "六月";
months = "七月";
months = "八月";
months = "九月";
months = "十月";
months = "十一月";
months = "十二月";

function padspaces(thestring)
{
    var spaces = "             ";
    len = math.round((9 - thestring.length)/2);

    return spaces.substring(0,len) + thestring;
}

function numleapyears(startyear, endyear)
{
   var leapyears, i;

   if (endyear >= startyear){
         for(leapyears = 0; startyear <= endyear; startyear++)
         if (isleapyear(startyear)) leapyears++;
    }else{
    for(leapyears = 0; endyear <= startyear; endyear++)
         if (isleapyear(endyear)) leapyears++;
    }
   return leapyears;
}

function isleapyear(year)
{
    if(math.round(year/4) == year/4){
      if(math.round(year/100) == year/100){
            if(math.round(year/400) == year/400)
                return true;
            else return false;
      }else return true;
    }
    return false;
}

function trim(thestring)
{
    var len;

    len = thestring.length;
   while(thestring.substring(0,1) == " "){ //trim left
         thestring = thestring.substring(1, len);
          len = thestring.length;
    }

   while(thestring.substring(len-1, len) == " "){ //trim right
         thestring = thestring.substring(0, len-1);
          len = thestring.length;
   }
   return thestring;
}

function determinemonthidx()
{
    var i, month, month_s, len;


    month = trim(document.calform.elements.value);
    len = month.length;

    for( i = 0; i <12; i++){
            month_s = months.substring(0,len);
      if (month_s.touppercase() == month.touppercase())
                return (i);
      }
      return -1;
}

function findnewyearstartingday(year)
{
   var leapyears, years, day;

   leapyears = numleapyears(1995, year);

   if(year >=1995)
         years = (year -1995)+leapyears;
   else    years = (year -1995)-leapyears;

   if(year >=1995)
      day = math.round(((years/7 - math.floor(years/7))*7)+.1);
   else    day = math.round(((years/7 -math.ceil(years/7))*7)-.1);
   
    if (year >=1995){
         if(isleapyear(year)) day--;
   }else day += 7;

   if(day < 0) day = 6;
   if(day > 6) day = 0;
   return day;
}

function findnumdaysinmonth(year, month)
{
   if(month == 1){
         if(isleapyear(year)) return 29;

         else return 28;
   }else{   
         if(month >6) month++;
         if(month/2 == math.round(month/2))return 31;
   }
return 30;      
}

function findmonthstartday(newyearday, year, month)
{
      var monthstartday;

      addarray = new array(12);

      addarray=0;addarray=3;addarray=3;addarray=6;
    addarray=1;addarray=4;addarray=6;addarray=2;
    addarray=5;addarray=0;addarray=3;addarray=5;

      monthstartday = newyearday + addarray;
      if(isleapyear(year)&& (month ) > 1) monthstartday ++;

      if (monthstartday > 6) monthstartday -= 7;

      return monthstartday;
}

functionfillcalendar()
{
      var year, month, midx, newyearday, monthstartday;
    var numdaysinmonth, i, t;

      year = parsefloat(document.calform.elements.value);
      month = document.calform.elements.value;

      midx=determinemonthidx();
      if (midx == -1){
         alert ("can't recognize that month");
         return;
      }

      newyearday = findnewyearstartingday(year);
      monthstartday = findmonthstartday(newyearday, year,midx);
      numdaysinmonth = findnumdaysinmonth(year, midx);

      for(i = 6;i < 43;i++){
      t = i-5-monthstartday;
      if ( t >= 1&&t <= numdaysinmonth)
            document.calform.elements.value =t;
      else document.calform.elements.value = "";
      }
}

function incdecyear(val)
{
    var valnum = parseint(val);
    var valnum2 = parseint(document.calform.elements.value)
    document.calform.elements.value = valnum2 + valnum;

    fillcalendar()
}

function incdecmonth(val)
{
    var valnum = parseint(val);
      var midx=determinemonthidx();
   
    midx += valnum;
    if(midx > 11) midx = 0;
    if(midx < 0)midx = 11;

   
    document.calform.elements.value = padspaces(months);

    fillcalendar()
}

// -->
</script>
   <table border=1 bgcolor="#000000" cellpadding=1 cellspacing=1>
      <table border=0cellpadding=0 cellspacing=0>
      <form name="calform">
          <tr>
            <td align=center cellpadding=0 cellspacing=0 bgcolor="#000000">
            <input
type=button value="<<" onclick="incdecyear(-1)" name="button">
            </td>
            <th cellpadding=0 cellspacing=0 bgcolor="#aaaaaa" colspan=5
align=center>
            <input size=4 type=text value="1993" name="text">
            </th>
            <td align=center cellpadding=0 cellspacing=0 bgcolor="#000000">
            <input
type=button value=">>" onclick="incdecyear(1)" name="button2">
            </td>
          </tr>
          <tr>
            <td align=center bgcolor="#000000">
            <input type=button value="<<"
onclick="incdecmonth(-1)" name="button2">
            </td>
            <th bgcolor="#aaaaaa" colspan=5 align=center>
            <input size=9 type=text
value=" january " name="text">
            </th>
            <td align=center bgcolor="#000000">
            <input type=button value=">>"
onclick="incdecmonth(1)" name="button2">
            </td>
          </tr>
          <tr>
            <thbgcolor="#ffcccc">s</th>
            <thbgcolor="#ccccff">m</th>
            <thbgcolor="#ccccff">t</th>
            <thbgcolor="#
      










--------------------------------------

拥有三人行论坛管理系列软件,一个人就可以管理一个论坛的更新维护。还能使您的论坛有千人在线的真实火暴效果,让您不在为论坛因没有人气而留不住会员而烦恼,使您的论坛早日成为一流的论坛。详情请登陆网站:http://www.cnsrx.cn 三人行论坛管理软件,站长必备的专业好工具。(您使用的是免费版本,购买收费版本后,将不带广告。业务QQ:247216 44985227)
页: [1]
查看完整版本: ***综合类***最新款式的万年历