Rotar imagen de acuerdo del día y hora

Estoy usando un código java para rotar imágenes dependiendo de la hora, la página que estoy haciendo es para una radio., el código me funciona perfecto .. Pero el problema es que tengo que actualizar o cambiar el código todos los días por 2 motivos .. El código solo funciona con la hora y los programas en la radio no son los mismos todos los días .. Lo que me interesaría es hacer que el código cambie automáticamente de imagen "CADA HORA" Y "CADA DÍA".. Aver si me explico .. Ejemplo .. Lunes 13:00 hs image00, Martes 13:00 hs image34 Miércoles 13:00 hs image34 Jueves y Viernes 13:00 image00 y así las 24 horas los 7 días de la semana .. Ahora te paso el código que estoy usando yo creo que solo hay que agregar algo más .. Desde ya muchas gracias por tu atención espero que me puedas ayudar
---------
<script language="JavaScript">
<!--
day=new Date() //Programacion dia Jueves
x=day.getHours()
if(x>=0 && x<3) {
document.write('<img src="programas/musicalatina.png">')
} else
if(x>=3 && x<6) {
document.write('<img src="programas/trasnoche.png">')
} else
if(x>=6 && x<7) {
document.write('<img src="programas/tango.png">')
} else
if (x>=7 && x<8) {
document.write('<img src="programas/tango.png">')
} else
if (x>=8 && x<9) {
document.write('<img src="programas/generazione.png">')
} else
if (x>=9 && x<10) {
document.write('<img src="programas/libertadcondicional.png">')
} else
if (x>=10 && x<11) {
document.write('<img src="programas/portugal.png">')
} else
if (x>=11 && x<12) {
document.write('<img src="programas/elsueñodelascenso.png">')
} else
if (x>=12 && x<13) {
document.write('<img src="programas/pasionvelezana.png">')
} else
if (x>=13 && x<14) {
document.write('<img src="programas/pasionvelezana.png">')
} else
if (x>=14 && x<15) {
document.write('<img src="programas/atreverse.png">')
} else
if (x>=15 && x<17) {
document.write('<img src="programas/futbol770.png">')
} else
if (x>=17 && x<18) {
document.write('<img src="programas/futbol770.png">')
} else
if (x>=18 && x<19) {
document.write('<img src="programas/futbol770.png">')
} else
if (x>=19 && x<20) {
document.write('<img src="programas/futbol770.png">')
} else
if (x>=20 && x<23) {
document.write('<img src="programas/futbol770.png">')
} else
if (x>=23 && x<24) {
document.write('<img src="programas/eneltiempo.png">')
}
<!-- End Hiding -->
</script>

1 Respuesta

Respuesta
1
He hecho un ejemplo muy tonto pero que creo que te puede servir de momento. Consta de tres ficheros, el index.html, el functions.js y el ejemplo.xml. Echale un vistazo a ver que te parece. Una vez que tu tienes acceso a los datos de tu xml con ellos puedes hacer todo lo que hacías antes, comparar con fechas, horas, etc:
index.html
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<script type="text/javascript" language="javascript" src="functions.js"></script>
<title>Ejemplo. XMLParser</title>
</head>
<body>
<div id="contenido">
</div>
</body>
</html>
functions.js
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
function loadXML(xmlFile)
{
xmlDoc.async="false";
xmlDoc.onreadystatechange=verify;
xmlDoc.load(xmlFile);
xmlObj=xmlDoc.documentElement;
}
function verify()
{
if (xmlDoc.readyState != 4)
{
return false;
}
}
loadXML('ejemplo.xml');
document.write('Programacion del mes de ' + xmlObj.childNodes(0).getAttribute("id") + ':<br>');
document.write('Dia ' + xmlObj.childNodes(0).childNodes(0).getAttribute("id") + ':<br>');
for (i=0; i<xmlObj.childNodes(0).childNodes(0).childNodes.length ;i++){
document.write('Desde las '+ xmlObj.childNodes(0).childNodes(0).childNodes(i).getAttribute("comienzo") + ' horas');
document.write(' hasta las '+ xmlObj.childNodes(0).childNodes(0).childNodes(i).getAttribute("final") + ' horas: ');
document.write(xmlObj.childNodes(0).childNodes(0).childNodes(i).text + '<br>');
}
ejemplo.xml
<?xml version="1.0" ?>
<agenda>
<mes id="Enero">
<dia id="1">
<hora comienzo="0" final="3">programas/musicalatina.png</hora>
<hora comienzo="3" final="6">programas/trasnoche.png</hora>
<hora comienzo="6" final="7">programas/tango.png</hora>
<hora comienzo="7" final="8">programas/generazione.png</hora>
</dia>
</mes>
</agenda>
Gracias por tu respuesta si podes pasarme el código como hacerlo te agradecería ya que no entiendo nada de programación menos de xml, o sea paso a paso de como hacerlo gracias por tu ayuda
Mientras te respondía se me cayo el equipo. En fin, te comentaba que lo que necesitas es tener la parte que cambia, es decir, los datos de las horas y días de los programas en una pequeña base de datos o fichero (xml, por ejemplo) y no tener que cambiar el código. Así el modificar los datos seria mucho más sencillo y no tendrías que estar modificando el código. Si no ves claro como acceder a una base de datos o a un fichero escríbeme y probamos alguna cosa.
Disculpa pero no me sale .. soy de madera en esto, gracias por tu ayuda mira si podes pasarme como tendría que ir, donde lo único que tengo que modificar es la dirección de imagen seria perfecto pero si no no importa tampoco quiero molestarte demasiado en todo caso seguiré usando la programación que vengo usando y lo modificare todos los días . en fin muchas gracias
Mira cuando ejecuto el index.html me aparece esto
Programación del mes de Mayo:
Día 4:
Desde las 0 horas hasta las 3 horas: programas/musicalatina.png
Desde las 3 horas hasta las 6 horas: images2/patricia.gif
Desde las 6 horas hasta las 7 horas: programas/tango.png
Desde las 7 horas hasta las 8 horas: programas/generazione.png
_______________
No se que hice mal pero tendría que aparecer una imagen en vez de texto..
Fíjate si podes entrar a esta página
www.am770.com.ar/contenido.htm esta es la pagina que stoy construyendo gracias
Por ejemplo, y cogiendo como referencia el código que tenias:
if (x>=19 && x<20) {
document.write('<img src="programas/futbol770.png">')
}
lo podemos poner:
if ((xmlObj.childNodes(0).childNodes(0).childNodes(i).getAttribute("comienzo"))>=19){
document.write('<img scr="'+document.write(xmlObj.childNodes(0).childNodes(0).childNodes(1).text+'">')
}
Prueba, lo mismo te hace falta alguna comilla.
Esta bien, sale lo correcto, lo que te he puesto era solo un ejemplo de como acceder al fichero, luego tu le puedes modificar y poner lo que quieras, y modificar a su vez lo que recoges del fichero y meterlo en una etiqueta de imagen, etc.
Ok.. pero .. como o donde modifico para que aparezca la imagen y no el texto.. perdón que moleste tanto, gracias por tu atención
Pues ahora el problema es que me pillas con mucho trabajo, pero no deberías desesperar y seguir intentándolo, sera problemilla con alguna comilla.
Si en un futuro te ves con ánimos y lo intentas, coméntamelo y lo seguimos viendo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas