📄 weeklycalendar.js
字号:
w_d.setMonth(w_d.getMonth() + k);
monthsel_html += '<select class="nav" id="w_sel_month" onchange="w_changeMonth(\'w_sel_month\')">';
for (im=0; im < 12; im++)
{
monthsel_html += '<option value="' + im + '" ' + ((im == w_d.getMonth())?'selected ':'')+ '>'+ w_monthname[im] + '</option>';
}
monthsel_html += '</select>';
monthsel_html += ' ';
monthsel_html += '<select class="nav" id="w_sel_year" onchange="w_changeYear(\'w_sel_year\')">';
for (im = w_min_year; im <= w_max_year; im++)
{
monthsel_html += '<option value="' + im + '" ' + ((im == w_d.getFullYear())?'selected ':'')+ '>'+ im + '</option>';
}
monthsel_html += '</select>';
monthsel_html += ' ';
document.getElementById('w_month_year').innerHTML = monthsel_html;
// write days number
w_writeDayNumber(w_d);
}
//
// set clicked date
//
function w_setDate(evt)
{
var m="";
var g="";
var mMonth;
var mDay;
var i,j;
var e_out;
var ie_var = "srcElement";
var moz_var = "target";
var prop_var = "rownumber";
// "target" for Mozilla, Netscape, Firefox et al. ; "srcElement" for IE
evt[moz_var] ? e_out = evt[moz_var][prop_var] : e_out = evt[ie_var][prop_var];
i = e_out;
prop_var = "colnumber";
evt[moz_var] ? e_out = evt[moz_var][prop_var] : e_out = evt[ie_var][prop_var];
j = e_out;
mMonth = (w_d.getMonth()+1);
mDay = document.getElementById("w_c"+i+j).innerHTML;
if(mMonth<10)
m = "0" + mMonth
else
m = mMonth
if (mDay<10)
g = "0" + mDay
else
g = mDay
// set the selected date
try
{
document.getElementById(w_linkedInputText_1).value = m + "/" + g + "/" + w_d.getFullYear();
document.getElementById(w_linkedInputText_2).value = '';
}
catch(e){}
w_hiddenCalendar();
}
//
// set week start and end date
// in the selected month
//
function w_SetWeekDate(evt)
{
var m="";
var g="";
var mMonth;
var mDay;
var result = '';
var startW = '';
var endW = '';
var e_out;
var ie_var = "srcElement";
var moz_var = "target";
var prop_var = "startweek";
var istartWeek, iendWeek;
var rowWeek;
// "target" for Mozilla, Netscape, Firefox et al. ; "srcElement" for IE
evt[moz_var] ? e_out = evt[moz_var][prop_var] : e_out = evt[ie_var][prop_var];
istartWeek = e_out;
prop_var = "endweek";
evt[moz_var] ? e_out = evt[moz_var][prop_var] : e_out = evt[ie_var][prop_var];
iendWeek = e_out;
prop_var = "rowweek";
evt[moz_var] ? e_out = evt[moz_var][prop_var] : e_out = evt[ie_var][prop_var];
rowWeek = e_out;
mMonth = (w_d.getMonth()+1);
if(mMonth<10)
m = "0" + mMonth
else
m = mMonth
mDay = document.getElementById("w_c"+rowWeek+istartWeek).innerHTML;
if (mDay<10)
g = "0" + mDay
else
g = mDay
startW = m + "/" + g + "/" + w_d.getFullYear();
mDay = document.getElementById("w_c"+rowWeek+iendWeek).innerHTML;
if (mDay<10)
g = "0" + mDay
else
g = mDay
endW = m + "/" + g + "/" + w_d.getFullYear();
// set the selected date
try
{
document.getElementById(w_linkedInputText_1).value = startW;
document.getElementById(w_linkedInputText_2).value = endW;
}
catch(e)
{};
w_hiddenCalendar();
}
//
// display date picker
// hide the col week
//
function w_displayDatePicker(linkedId1)
{
w_linkedInputText_1 = linkedId1;
w_linkedInputText_2 = null;
HideWeekCol = true;
w_displayCal();
}
//
// display calendar
//
function w_displayCalendar(linkedId1, linkedId2)
{
w_linkedInputText_1 = linkedId1;
w_linkedInputText_2 = linkedId2;
HideWeekCol = false;
w_displayCal();
}
function w_displayCal()
{
w_renderCalendar(0);
if(navigator.userAgent.indexOf("MSIE") != -1)
{
weeklyCalendar.style.left=window.event.x+document.body.scrollLeft;
weeklyCalendar.style.top=window.event.y+document.body.scrollTop;
}
else if ((navigator.appName.indexOf("Netscape") != -1) || (navigator.appName.indexOf("Opera") != -1))
{
document.getElementById('weeklyCalendar').style.left=gx + 5;
document.getElementById('weeklyCalendar').style.top=gy + 5;
}
document.getElementById('weeklyCalendar').style.visibility = "visible";
}
//
// hidden calendar
//
function w_hiddenCalendar()
{
document.getElementById('weeklyCalendar').style.visibility='hidden';
// remove the attached events
var i, j;
var week;
var daycol;
for (i = 0; i < 7; i++)
{
// detach event from week element
try
{
week = document.getElementById("week_" +i);
if(window.removeEventListener()){ // Mozilla, Netscape, Firefox
week.removeEventListener('click', w_SetWeekDate, false);
} else { // IE
week.detachEvent('onclick', w_SetWeekDate);
}
}
catch(e){};
// detach event from each day col
try
{
for (j=0; j <7; j++)
{
daycol = document.getElementById("w_c" +i+""+j);
if(window.removeEventListener()){ // Mozilla, Netscape, Firefox
daycol.removeEventListener('click', w_setDate, false);
} else { // IE
daycol.detachEvent('onclick', w_setDate);
}
}
}
catch(e){};
}
}
function w_writeDayname()
{
var mDay;
document.write('<tr>');
for(wd =0; wd < 7; wd++)
{
mDay = wd + w_StartOfWeek;
if (mDay > 6)
mDay = mDay-7;
document.write('<td class="wd">' + w_dayname[mDay] + '</td>');
// set week ends postion
if (w_dayname[mDay] == 'Sat')
weekend_pos[0] = wd;
if (w_dayname[mDay] == 'Sun')
weekend_pos[1] = wd;
}
document.write('<td class="week" id="weekHeader">Week</td>');
document.write('</tr>');
}
///
///
///
function buildWeeklyCalendar(WeekStart)
{
if (WeekStart != undefined)
w_StartOfWeek = WeekStart;
document.write('<div id="weeklyCalendar" class="calendar">');
document.write('<table class="calendar" >');
document.write('<tr><td colspan="8">');
// header table
document.write('<table width="100%" cellpading="0" cellspacing="0">');
document.write('<tr class="firstrow"><td width="8px" onClick="w_renderCalendar(-1);" align="right" ><img src="images/arrow_left.gif" title="' + prev_month_title + '" border="0"></td>');
document.write('<td width="8px" onClick="w_renderCalendar(1);" align="left" ><img src="images/arrow_right.gif" title="' + next_month_title + '" border="0"></td>');
document.write('<td colspan="4" id="w_month_year" align="center">');
document.write('<select id="w_sel_month">');
for (im=0; im < 12; im++)
{
document.write('<option value="' + im + '" ' + ((im == w_d.getMonth())?'selected ':'')+ '>'+ w_monthname[im] + '</option>');
}
document.write('</select>');
document.write(' ');
document.write('<select id="w_sel_year">');
for (im = w_min_year; im <= w_max_year; im++)
{
document.write('<option value="' + im + '" ' + ((im == w_d.getFullYear())?'selected ':'')+ '>'+ im + '</option>');
}
document.write('</select>');
document.write('</td>');
document.write('<td align="center" onClick="w_hiddenCalendar()"><img src="images/close.jpg" title="' + close_title + '" border="0"></td>');
document.write('</tr>');
document.write('</table>');
// end header table
document.write('</td></tr>');
w_writeDayname();
// init day/week number
for (i=0;i<6;i++)
{
document.write(' <tr>');
for (j=0;j<7;j++)
{
// document.write('<td onClick="w_setDate('+i+','+j+')" class="day_out" id="w_c' + i + j + '"> </td>');
document.write('<td class="day_out" onmouseover="return escape(\'This is area 1\')" id="w_c' + i + j + '"> </td>');
}
// document.write('<td class="weeksel" id="week_'+ i + '" onClick="w_SetWeekDate(' + i + ')"> Select </td>');
document.write('<td class="weeksel" id="week_'+ i + '"> Select </td>');
document.write(' </tr>');
}
document.write('</table></div>');
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -