2010-11-20 56 views
1

我想问一下,如果有反正我可以将日历“转移”到页面的右侧?因为我意识到它只能显示在左侧。我真的不知道如何将它转移到右侧......我也不知道如何将CSS放入其中。javascript,日历

下面就来让日历代码...

<script type="text/javascript"> 

// SET ARRAYS 
     var day_of_week = new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat'); 
     var month_of_year = new Array('January','February','March','April','May','June','July','August','September','October','November','December'); 

// DECLARE AND INITIALIZE VARIABLES 
     var Calendar = new Date(); 

     var year = Calendar.getFullYear();  // Returns year 
     var month = Calendar.getMonth(); // Returns month (0-11) 
     var today = Calendar.getDate(); // Returns day (1-31) 
     var weekday = Calendar.getDay(); // Returns day (1-31) 

     var DAYS_OF_WEEK = 7; // "constant" for number of days in a week 
     var DAYS_OF_MONTH = 31; // "constant" for number of days in a month 
     var cal; // Used for printing 

     Calendar.setDate(1); // Start the calendar day at '1' 
     Calendar.setMonth(month); // Start the calendar month at now 


/* VARIABLES FOR FORMATTING 
NOTE: You can format the 'BORDER', 'BGCOLOR', 'CELLPADDING', 'BORDERCOLOR' 
     tags to customize your caledanr's look. */ 

    var TR_start = '<TR>'; 
    var TR_end = '</TR>'; 
    var highlight_start = '<TD WIDTH="10"><TABLE CELLSPACING=0 BORDER=1 BGCOLOR=DEDEFF BORDERCOLOR=CCCCCC><TR><TD WIDTH=5><B><CENTER>'; 
    var highlight_end = '</CENTER></TD></TR></TABLE></B>'; 
    var TD_start = '<TD WIDTH="1"><CENTER>'; 
    var TD_end = '</CENTER></TD>'; 

/* BEGIN CODE FOR CALENDAR 
NOTE: You can format the 'BORDER', 'BGCOLOR', 'CELLPADDING', 'BORDERCOLOR' 
tags to customize your calendar's look.*/ 

    cal = '<TABLE BORDER=1 CELLSPACING=0 CELLPADDING=0 BORDERCOLOR=BBBBBB><TR><TD>'; 
    cal += '<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=1>' + TR_start; 
    cal += '<TD COLSPAN="' + DAYS_OF_WEEK + '" BGCOLOR="#EFEFEF"><CENTER><B>'; 
    cal += month_of_year[month] + ' ' + year + '</B>' + TD_end + TR_end; 
    cal += TR_start; 

// LOOPS FOR EACH DAY OF WEEK 
    for(index=0; index < DAYS_OF_WEEK; index++) 
    { 

// BOLD TODAY'S DAY OF WEEK 
     if(weekday == index) 
     cal += TD_start + '<B>' + day_of_week[index] + '</B>' + TD_end; 

// PRINTS DAY 
     else 
      cal += TD_start + day_of_week[index] + TD_end; 
      } 

      cal += TD_end + TR_end; 
      cal += TR_start; 

// FILL IN BLANK GAPS UNTIL TODAY'S DAY 
    for(index=0; index < Calendar.getDay(); index++) 
    cal += TD_start + '' + TD_end; 

// LOOPS FOR EACH DAY IN CALENDAR 
    for(index=0; index < DAYS_OF_MONTH; index++) 
    { 
     if(Calendar.getDate() > index) 
     { 
       // RETURNS THE NEXT DAY TO PRINT 
       week_day =Calendar.getDay(); 

       // START NEW ROW FOR FIRST DAY OF WEEK 
       if(week_day == 0) 
       cal += TR_start; 

     if(week_day != DAYS_OF_WEEK) 
     { 

      // SET VARIABLE INSIDE LOOP FOR INCREMENTING PURPOSES 
      var day = Calendar.getDate(); 

      // HIGHLIGHT TODAY'S DATE 
      if(today==Calendar.getDate()) 
      cal += highlight_start + day + highlight_end + TD_end; 

      // PRINTS DAY 
      else 
      cal += TD_start + day + TD_end; 
      } 

     // END ROW FOR LAST DAY OF WEEK 
     if(week_day == DAYS_OF_WEEK) 
     cal += TR_end; 
     } 

     // INCREMENTS UNTIL END OF THE MONTH 
     Calendar.setDate(Calendar.getDate()+1); 

    }// end for loop 

    cal += '</TD></TR></TABLE></TABLE>'; 

    // PRINT CALENDAR 
    document.write(cal); 

    // End --> 

</script> 
+1

我们不能回答这基于你提供的大量代码。我们需要查看生成的HTML。有可能是像“float:right”一样简单的事情。或应用于日历容器的“边距:0 0 0自动”。 – meagar 2010-11-20 08:36:32

+0

''

...''上,我要去去自杀非表格data..hold,我马上就回来。 – JAL2010-11-20 08:39:10

+1

你不应该自己实现。以http://www.webdesignbooth.com/9-useful-jquery-calendar-and-date-picker-plugins-for-web-designers/为例。 – 2010-11-20 08:51:37

回答

2

右表定义添加ALIGN =上线38

所以你必须:

cal = '<TABLE ALIGN=RIGHT BORDER=1 CELLSPACING=0 CELLPADDING=0 BORDERCOLOR=BBBBBB><TR><TD>'; 

而不是:

cal = '<TABLE BORDER=1 CELLSPACING=0 CELLPADDING=0 BORDERCOLOR=BBBBBB><TR><TD>'; 
+1

我相信过时的标记来调整日期脚本(没有双关语意图)是好的。在CSS(目前最好的做法)中,我们会使用'float:right;'。 – PleaseStand 2010-11-20 08:49:18