У мене скрипт, с ним у мене возникли проблемы, при вожу код частично:
Код:
<script type="text/javascript">
var now = new Date();
var mon = now.getMonth();
var den = now.getDate();
var god = now.getYear();
var textday = " ";
var months = ["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"];
var daycounts = [31,29,31,30,31,30,31,31,30,31,30,31]; //for leap years, remember to set february to 29 days
var firstdays = [1,4,5,1,3,5,1,4,0,2,5,0];
var apps = [
[den,mon+1,den,mon+1,"Сегодня нет событий","#","#0099FF",0],
// -------------------------и тут ещё много элементов у мене-----------------------
];
ContentInfo = "";
topColor = "#808080"
subColor = "#C0C0C0"
var mouse_X;
var mouse_Y;
var tip_active = 0;
function update_tip_pos(){
document.getElementById('ToolTip').style.left = mouse_X + 20;
document.getElementById('ToolTip').style.top = mouse_Y;
}
var ie = document.all?true:false;
if (!ie) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = getMouseXY;
function getMouseXY(e) {
if (ie) { // grab the x-y pos.s if browser is IE
mouse_X = event.clientX + document.body.scrollLeft;
mouse_Y = event.clientY + document.body.scrollTop;
}
else { // grab the x-y pos.s if browser is NS
mouse_X = e.pageX;
mouse_Y = e.pageY;
}
if (mouse_X < 0){mouse_X = 0;}
if (mouse_Y < 0){mouse_Y = 0;}
if(tip_active){update_tip_pos();}
}
function EnterContent(TTitle, TContent){
ContentInfo = '<table border="0" width="100" cellspacing="0" cellpadding="0">'+
'<tr><td width="100%" bgcolor="#000000">'+
'<table border="0" width="100%" cellspacing="1" cellpadding="0">'+
'<tr><td width="100%" bgcolor='+topColor+'>'+
'<table border="0" width="90%" cellspacing="0" cellpadding="0" align="center">'+
'<tr><td width="100%">'+
'<font class="tooltiptitle">*'+TTitle+'</font>'+
'</td></tr>'+
'</table>'+
'</td></tr>'+
'<tr><td width="100%" bgcolor='+subColor+'>'+
'<table border="0" width="90%" cellpadding="0" cellspacing="1" align="center">'+
'<tr><td width="100%">'+
'<font class="tooltipcontent">'+TContent+'</font>'+
'</td></tr>'+
'</table>'+
'</td></tr>'+
'</table>'+
'</td></tr>'+
'</table>';
}
function tip_it(which, TTitle, TContent){
if(which){
update_tip_pos();
tip_active = 1;
document.getElementById('ToolTip').style.visibility = "visible";
EnterContent(TTitle, TContent);
document.getElementById('ToolTip').innerHTML = ContentInfo;
}else{
tip_active = 0;
document.getElementById('ToolTip').style.visibility = "hidden";
}
}
function CheckDate(month,dayno)
{
var retval = new String(dayno);
var m = month + 1;
var oki = " ";
for(var app = 0; app < apps.length; app++)
{
if(m == apps[app][1] ) //first month
{
if(apps[app][3] - apps[app][1] > 0)
{
if(dayno >= apps[app][0])
{ textday = "День рождения ";
if (apps[app][0] == den & apps[app][1] == mon+1)
{
apps[app][6] = "#0099FF";
if (apps[app][7] == 1) { textday = "Сегодня день рождения";}
else if (apps[app][7] == 0) { textday = "Сегодня нет событий"; }
}
retval = "<div style='background-color : " + apps[app][6] + ";'><div id='ToolTip'></div><a class='NArial' href='" + apps[app][5] + "' onMouseover='tip_it(1,todaytext,todaytext);' onMouseout='tip_it(0, textday,textday)'>" + dayno + "</a></div>";
}
}
else
{
if(dayno >= apps[app][0] && dayno <= apps[app][2])
{ textday = "День рождения ";
if (apps[app][0] == den & apps[app][1] == mon+1)
{
apps[app][6] = "#0099FF";
if (apps[app][7] == 1) { textday = "Сегодня день рождения";}
else if (apps[app][7] == 0) { textday = "Сегодня нет событий"; }
}
retval = "<div style='background-color : " + apps[app][6] + ";'><div id='ToolTip'></div><a class='NArial' href='" + apps[app][5] + "' onMouseover='tip_it(1,todaytext,todaytext);' onMouseout='tip_it(0, textday,textday)'>" + dayno + "</a></div>";
}
}
}
else if(m == apps[app][3]) // second month
{
if(dayno <= apps[app][2])
{ textday = "День рождения ";
if (apps[app][0] == den & apps[app][1] == mon+1)
{
apps[app][6] = "#0099FF";
if (apps[app][7] == 1) { textday = "Сегодня день рождения";}
else if (apps[app][7] == 0) { textday = "Сегодня нет событий"; }
}
retval = "<div style='background-color : " + apps[app][6] + ";'><div id='ToolTip'></div><a class='NArial' href='" + apps[app][5] + "' onMouseover='tip_it(1,todaytext,todaytext);' onMouseout='tip_it(0, textday,textday)'>" + dayno + "</a></div>";
}
}
else if( m > apps[app][1] && m < apps[app][3] )
{ textday = "День рождения ";
if (apps[app][0] == den & apps[app][1] == mon+1)
{
apps[app][6] = "#0099FF";
if (apps[app][7] == 1) { textday = "Сегодня день рождения";}
else if (apps[app][7] == 0) { textday = "Сегодня нет событий"; }
}
retval = "<div style='background-color : " + apps[app][6] + ";'><div id='ToolTip'></div><a class='NArial' href='" + apps[app][5] + "' onMouseover='tip_it(1,todaytext,todaytext);' onMouseout='tip_it(0, textday,textday)'>" + dayno + "</a></div>";
}
}
return retval;
}
function PrintMonth(month)
{
var done = false;
var day = 0;
document.write("<table class='inner'><caption>" + months[month] + "</caption><thead>");
document.write("<th>Пн</th><th>Вт</th><th>Ср</th><th>Чт</th><th>Пн</th><th>Сб</th><th>Вс</th></thead>");
while(!done)
{
document.write("<tr>");
PrintWeek(month,day, firstdays[month], daycounts[month]);
document.write("</tr>");
day = day + 7;
if( day > daycounts[month] + firstdays[month])
{
done = true;
}
}
document.write("</tbody></table><p>");
}
function PrintWeek(monthno,start,min,max)
{
var d;
var desc;
for(var j = 0; j < 7; j++)
{
document.write("<td>");
d = start + j;
if(d >= min && d < max + min)
{
desc = CheckDate(monthno,d - min + 1);
document.write(desc);
}
document.write("</td>");
}
}
</script>
Вот сама проблема:
Код:
retval = "<div style='background-color : " + apps[app][6] + ";'><div id='ToolTip'></div><a class='NArial' href='" + apps[app][5] + "' onMouseover='tip_it(1,todaytext,todaytext);' onMouseout='tip_it(0, textday,textday)'>" + dayno + "</a></div>";
Дело в том, что вместо переменных todaytext и todaytext, мене нужно передать параметры apps[app][4] и apps[app][6] например, но для этого их нужно взять в кавычки.
Если же сии apps[app][4] и apps[app][6] я переношу в локальную переменную функции CheckDate, скрипт не работает, ежели переношу в глобальную переменную, то в неё заносится значение последнего прохода цикла.... Как мене переделать?
Если нужно выложить страницу с полным скриптом, я это сделаю....