Duda con un script :s

polkorn

Bovino maduro
#1
Hola Bakunos tengo una duda con un script que tengo en javascript en una pagina web, es para tener un reloj y la fecha en mi pagina web; la pagina web no la tengo en ningun servidor, solo la tengo en mi lap es para un proyecto de mi uni pero algo anda mal en mi script oh bueno no se, pero pues me manda mal la fecha, me aparece la fecha de un mes pasado pero la hora me sale perfectamente, quisiera saber en donde estoy mal o que hice mal! :s si me podrian resolver mi duda por favor, aqui les dejo el codigo:

<script type="text/javascript">
function muestraFecha()
{
var hoy=new Date();
var h=hoy.getHours();
var m=hoy.getMinutes();
var s=hoy.getSeconds();
var d=hoy.getDay();
var M=hoy.getMonth();
var Y=hoy.getFullYear();
// agregamos un cero al principio para los números <10
m=checaNum(m);
s=checaNum(s);
d=checaNum(d);
M=checaNum(M);
document.getElementById('txt').innerHTML=d+"/"+M+"/"+Y+" "+h+":"+m+":"+s;
t=setTimeout('muestraFecha()',500);
}

function checaNum(i)
{
if (i<10)
{
i="0" + i;
}
return i;
}
</script>

y lo jalo desde la etiqueta <body> asi

<body onload="muestraFecha()" bgcolor="#70b093">

y ya... como les digo la hora si me sale bien pero la fecha no, me muestra una fecha de un mes pasado siempre me sale entre el 2 de marzo hasta el 5 de maarzo :S...Gracias.
 

polkorn

Bovino maduro
#3
Si en mi lap esta bien!... no creo que tenga que ver el SO? o si??
lo dudo mucho, pero si esta bien configurado en mi lap! :S
 

rodrigod

Bovino maduro
#5
de java no sé mucho (por no decir nada) pero debes hacer aparecer la fecha entera como te la devuelve la función Date() que ví por ahí, para ver si es error de código o de la fecha del sistema.
javascript es case sensitive? no se te estarán mezclando el contenido de las variable de mes y minuto?
son dudas que me surgen, como ya dije de java no sé.


Buscando en google, me encontré conque la función para obtener el día del mes es getDate(), getDay() te devuelve el día de la semana.
te dejo una página que tal vez te pueda ayudar. http://www.w3schools.com/jsref/jsref_obj_date.asp
Te recomiendo que revises las funciones y lo que
 

jenrique

Bovino maduro
#6
Hola, el script tuyo lo corri con muchos errores, de dejo este, logicamente puedes conseguir muchos mas en la web. De todas formas si te sirve este en hora buena. Saludos,


<script LANGUAGE="JavaScript">
<!-- COMIENZO
Stamp = new Date();
year = Stamp.getYear();
if (year < 2000) year = 1900 + year;
document.write('<font size="2" face="Arial"><B>Fecha: ' + (Stamp.getMonth() + 1) +"/"+Stamp.getDate()+ "/"+ year + '</B></font><BR>');
var Hours;
var Mins;
var Time;
Hours = Stamp.getHours();
if (Hours >= 12) {
Time = " P.M.";
}
else {
Time = " A.M.";
}
if (Hours > 12) {
Hours -= 12;
}
if (Hours == 0) {
Hours = 12;
}
Mins = Stamp.getMinutes();
if (Mins < 10) {
Mins = "0" + Mins;
}
document.write('<font size="2" face="Arial"><B>Hora: ' + Hours + ":" + Mins + Time + '</B></font>');
// FIN -->
</script>
 

polkorn

Bovino maduro
#7
de java no sé mucho (por no decir nada) pero debes hacer aparecer la fecha entera como te la devuelve la función Date() que ví por ahí, para ver si es error de código o de la fecha del sistema.
javascript es case sensitive? no se te estarán mezclando el contenido de las variable de mes y minuto?
son dudas que me surgen, como ya dije de java no sé.


Buscando en google, me encontré conque la función para obtener el día del mes es getDate(), getDay() te devuelve el día de la semana.
te dejo una página que tal vez te pueda ayudar. http://www.w3schools.com/jsref/jsref_obj_date.asp
Te recomiendo que revises las funciones y lo que
sii gracias bakuno!! checare la pagina!!
 

polkorn

Bovino maduro
#8
Hola, el script tuyo lo corri con muchos errores, de dejo este, logicamente puedes conseguir muchos mas en la web. De todas formas si te sirve este en hora buena. Saludos,


<script LANGUAGE="JavaScript">
<!-- COMIENZO
Stamp = new Date();
year = Stamp.getYear();
if (year < 2000) year = 1900 + year;
document.write('<font size="2" face="Arial"><B>Fecha: ' + (Stamp.getMonth() + 1) +"/"+Stamp.getDate()+ "/"+ year + '</B></font><BR>');
var Hours;
var Mins;
var Time;
Hours = Stamp.getHours();
if (Hours >= 12) {
Time = " P.M.";
}
else {
Time = " A.M.";
}
if (Hours > 12) {
Hours -= 12;
}
if (Hours == 0) {
Hours = 12;
}
Mins = Stamp.getMinutes();
if (Mins < 10) {
Mins = "0" + Mins;
}
document.write('<font size="2" face="Arial"><B>Hora: ' + Hours + ":" + Mins + Time + '</B></font>');
// FIN -->
</script>
Deacuerdo bakuno! checare tu codigo y vere en que puedo mejorar mi codigo! Muchas gracias! x)
 

Zephyros

Bovino de la familia
#9
Te recomiendo que intentes arreglar el código fuente que ya tienes, así aprenderás más, que cambiando de código sólo porque no funciona.

Si no es problema de la fecha que esté errónea en tu equipo, entonces algo está mal con las funciones que leen dicha información del sistema.

Por cierto, las variables no van entrecomilladas... por lo menos eso es lo que tengo entendido...
 

polkorn

Bovino maduro
#10
Te recomiendo que intentes arreglar el código fuente que ya tienes, así aprenderás más, que cambiando de código sólo porque no funciona.

Si no es problema de la fecha que esté errónea en tu equipo, entonces algo está mal con las funciones que leen dicha información del sistema.

Por cierto, las variables no van entrecomilladas... por lo menos eso es lo que tengo entendido...
sii eso es lo que estoy haciendo....checando codigos y ver en que poner al 100 mi codigo.... am sii ok volvere a revisar todo nuevamente!! Gracias por tu colaboracion bakuno!
 

jiramy

Bovino adolescente
#11
hola mi amigo el detalle esta var getMonth(); devuelve un rango (0-11) lo cual quiere decir k antes de imprimir M tienes q sumarl 1 M+1
 
Arriba