przez vilano » 14 listopada 2005, o 01:40
Mam nielada problem. Dla madrych glow bedzie to bulka z maslem, a mianowice sciagnalem sobie scrypt z kalendarzem, zmodyfikowalem sobie go do wlasnych potrzeb, i teraz w I.E. pokazuje sie wszystko slicznie natomiast w Firefoksie zamias daty 2005 pokazuje sie 105.
Oto Kod moze ktos moglby pomoc:
function leapYear(year) {
if (year % 4 == 0) // basic rule
return true // is leap year
/* else */ // else not needed when statement is "return"
return false // is not leap year
}
function getDays(month, year) {
// create array to hold number of days in each month
var ar = new Array(12)
ar[0] = 31 // Styczeñ
ar[1] = (leapYear(year)) ? 29 : 28 // Luty
ar[2] = 31 // Marzec
ar[3] = 30 // Kwiecieñ
ar[4] = 31 // Maj
ar[5] = 30 // Czerwiec
ar[6] = 31 // Lipiec
ar[7] = 31 // Sierpieñ
ar[8] = 30 // Wrzesieñ
ar[9] = 31 // PaŸdziernik
ar[10] = 30 // Listopad
ar[11] = 31 // Grudzieñ
// return number of days in the specified month (parameter)
return ar[month]
}
function getMonthName(month) {
// create array to hold name of each month
var ar = new Array(12)
ar[0] = "Styczeñ"
ar[1] = "Luty"
ar[2] = "Marzec"
ar[3] = "Kwiecieñ"
ar[4] = "Maj"
ar[5] = "Czerwiec"
ar[6] = "Lipiec"
ar[7] = "Sierpieñ"
ar[8] = "Wrzesieñ"
ar[9] = "PaŸdziernik"
ar[10] = "Listopad"
ar[11] = "Grudzieñ"
// return name of specified month (parameter)
return ar[month]
}
function setCal() {
// standard time attributes
var now = new Date()
var year = now.getYear()
var month = now.getMonth()
var monthName = getMonthName(month)
var date = now.getDate()
now = null
// create instance of first day of month, and extract the day on which it occurs
var firstDayInstance = new Date(year, month, 1)
var firstDay = firstDayInstance.getDay()
firstDayInstance = null
// number of days in current month
var days = getDays(month, year)
// call function to draw calendar
drawCal(firstDay + 1, days, date, monthName,year)
}
function drawCal(firstDay, lastDate, date, monthName, year) {
// constant table settings
var headerHeight // height of the table's header cell
var border // 3D height of table's border
var cellspacing // width of table's border
var headerColor// color of table's header
var headerSize// size of tables header font
var colWidth// width of columns in table
var dayCellHeight// height of cells containing days of the week
var dayColor// color of font representing week days
var cellHeight// height of cells representing dates in the calendar
var todayColor = "red" // color specifying today's date in the calendar
var timeColor = "green" // color of font representing current time
// create basic table structure
var text = "" // initialize accumulative variable to empty string
text += '<CENTER>'
text += '<TABLE ALIGN="CENTER" font-size: 12px">' // table settings
text += '<TH COLSPAN=7 HEIGHT=' + headerHeight + '>' // create table header cell
text += '<FONT COLOR="' + headerColor + '" SIZE=-1' + headerSize + '>' // set font for table header
text += monthName + ' ' + year
text += '<\/FONT>' // close table header's font settings
text += '<\/TH>' // close header cell
// variables to hold constant settings
var openCol = '<TD WIDTH=' + colWidth + ' HEIGHT=' + dayCellHeight + '>'
openCol += '<FONT COLOR="' + dayColor + '">'
var closeCol = '<\/FONT><\/TD>'
// create array of abbreviated day names
var weekDay = new Array(7)
weekDay[0] = "N"
weekDay[1] = "Pn"
weekDay[2] = "Wt"
weekDay[3] = "Œr"
weekDay[4] = "Cz"
weekDay[5] = "Pt"
weekDay[6] = "So"
// create first row of table to set column width and specify week day
text += '<TR STYLE="text-align: center">'
for (var dayNum = 0; dayNum < 7; ++dayNum) {
text += openCol + weekDay[dayNum] + closeCol
}
text += '<\/TR>'
// declaration and initialization of two variables to help with tables
var digit = 1
var curCell = 1
for (var row = 1; row <= Math.ceil((lastDate + firstDay - 1) / 7); ++row) {
text += '<TR ALIGN="right" VALIGN="top">'
for (var col = 1; col <= 7; ++col) {
if (digit > lastDate)
break
if (curCell < firstDay) {
text += '<TD><\/TD>';
curCell++
} else {
if (digit == date) { // current cell represent today's date
text += '<TD HEIGHT=' + cellHeight + '>'
text += '<FONT COLOR="' + todayColor + '">'
text += digit
text += '<\/FONT><BR>'
text += '<FONT COLOR="' + timeColor + '" SIZE=1 >'
text += '<CENTER>'+ '<\/CENTER>'
text += '<\/FONT>'
text += '<\/TD>'
} else
text += '<TD HEIGHT=' + cellHeight + '>' + digit + '<\/TD>'
digit++
}
}
text += '<\/TR>'
}
// close all basic table tags
text += '<\/TABLE>'
text += '<\/CENTER>'
// print accumulative HTML string
document.write(text)
}
//]]>
</script>