Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/09/2004, 05:42
Avatar de seoista
seoista
 
Fecha de Ingreso: septiembre-2003
Ubicación: Pues leyéndote
Mensajes: 1.076
Antigüedad: 20 años, 7 meses
Puntos: 59
Pregunta >> ¿Porqué no funciona en Mozilla? <<

Amig@s, hoy estoy preguntón.

¿Por qué no funciona este JavaScript (calendario) en Mozilla ?
Código:
<script language="JavaScript">
<!-- Begin
var now = new Date();
var month_array = new Array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");
document.write("<form name=date_list><table bgcolor='#DDDDDD'><tr><td>");
document.write("<select name=month onchange=change_month(this.options.selectedIndex)>");
for(i=0;i<month_array.length;i++)
{
 if (now.getMonth() != i)
 {document.write ("<option value="+i+">"+month_array[i]);}
 else
 {document.write ("<option value="+i+" selected>"+month_array[i]);}

}
document.write("</select>");
document.write("</td><td>");
document.write ("<select name=year onchange=change_year(this.options[this.options.selectedIndex])>");
for(i=1950;i<3000;i++)
{
 if (now.getYear() != i)
 {document.write("<option value="+i+">"+i);}
 else
 {document.write("<option value="+i+" selected>"+i);}
}
document.write("</select></td></tr><tr><td colspan=2><center>");

document.write("<table bgcolor='#FFFFFF' border=0 cellspacing=0 cellpading=0 width=100%><tr bgcolor='#DDDDDD' align=center>");
document.write("<td><font color='#000000'>L</font></td><td><font color='#000000'>M</td><td><font color='#000000'>X</td><td><font color='#000000'>J</td><td><font color='#000000'>V</td><td ><font color='#000000'>S</td><td ><font color=RED>D</td>");
document.write("</tr><tr>");
for(j=0;j<6;j++)
{
 for(i=0;i<7;i++)
 {
   document.write("<td align=center id=d"+i+"r"+j+"></td>")
 }
 document.write("</tr>");
}

document.write("</table>");

document.write("</center></from></td></tr></table>");

var show_date = new Date();

function set_cal(show_date)
{
begin_day = new Date (show_date.getYear(),show_date.getMonth(),1);
begin_day_date = begin_day.getDay();
end_day = new Date (show_date.getYear(),show_date.getMonth()+1,1);
count_day = (end_day - begin_day)/1000/60/60/24;
input_table(begin_day_date,count_day);
}
set_cal(show_date);

function input_table(begin,count)
{
init();
j=0;
if (begin!=0){i=begin-1;}else{i=6}
for (c=1;c<count+1;c++)
{
 colum_name = eval("d"+i+"r"+j);
 if ((now.getDate() == c)&&(show_date.getMonth() == now.getMonth())&&(show_date.getYear() == now.getYear())) {colum_name.style.backgroundColor = "#00008B";colum_name.style.color = "#FFFFFF"};
 colum_name.innerText =  c;
 i++;
 if (i==7){i=0;j++;}
}
}

function init()
{
for(j=0;j<6;j++)
{
 for(i=0;i<7;i++)
 {
 colum_name = eval("d"+i+"r"+j);
 colum_name.innerText =  "-";
 colum_name.style.backgroundColor ="";
 colum_name.style.color ="#00008B";
 }
}
}

function change_month(sel_month)
{
show_date = new Date(show_date.getYear(),sel_month,1);
set_cal(show_date);
}

function change_year(sel_year)
{
sel_year = sel_year.value;
show_date = new Date(sel_year,show_date.getMonth(),1);
set_cal(show_date);
}
//  End -->
</script> 
Lo tengo puesto como xxx.js:
Código:
<script language="JavaScript" src="calendario.js" type=text/javascript></script> 
En I.Explorer funciona perfectamente, pero en Mozilla sólo sale una parte.
Así:

como veis falta la parte de los días.

Gracias por vuestra ayuda.

Saludos
__________________
· No contesto por M.P.