Quiero hacer un gif animado con una secuencia de 4 imagenes. El problema es que esas imagenes cambian de url. De hecho ese cambio no son más que fechas. El problema es que no se generan de forma periodica e incluso a veces ni se generan. El objetivo es hacer el gif con las 4 últimas imagenes disponibles.
Yo habia pensado en algún condicional que fuera buscando todas las posibles fechas, que van de 15 en 15 mins, de ahora hacia atrás y en cuanto la encuentre pase a buscar la siguiente. ¿Si se os ocurre otra forma?
Adjunto lo que tengo de script por si os sirve de base.
Pd: La última imagen generada se puede encontrar con el url "http://www.sat24.com/image.ashx?country=fr&type=last&time=&sat=ir". El resto hay que incluir una fecha
http://www.sat24.com/image2.ashx?region=fr&time=201202042345&ir=true
<html>
<head>
<title>GIF SAT24 IR</title>
<script language="javascript">
var mydate=new Date();
var year=mydate.getYear();
if (year < 1000)
year+=1900;
var day=mydate.getDay();
var month=mydate.getMonth()+1;
if (month<10)
month="0"+month;
var daym=mydate.getDate();
if (daym<10)
daym="0"+daym;
var SecuenciaEjecutandose = false
var SecuenciaID = null
var imagen = 4
var duracion = 1000
if (CompruebaVersion()) {
imagenes = new CreaArray(4)
imagenes[1].src = "http://www.sat24.com/image2.ashx?region=fr&time=201202050000&ir=true"
imagenes[2].src = "http://www.sat24.com/image2.ashx?region=fr&time=201202042345&ir=true"
imagenes[3].src = "http://www.sat24.com/image2.ashx?region=fr&time=201202042330&ir=true"
imagenes[4].src = "http://www.sat24.com/image.ashx?country=fr&type=last&time=&sat=ir"
}
function CompruebaVersion() {
if (navigator.appVersion.charAt(0) >= 3 && document.images) return true
else return false
}
function CreaArray(n) {
this.length = n
for (var i = 1; i<=n; i++) {
this = new Image()
}
return this
}
function DetenerSecuencia (){
if(SecuenciaEjecutandose)
clearTimeout(SecuenciaID)
SecuenciaEjecutandose = false
imagen = 0
}
function MostrarSecuencia () {
if (CompruebaVersion()) {
document.images["secuencia"].src = imagenes[imagen].src
imagen++
if ( imagen == 5 )
imagen = 1
}
SecuenciaID = setTimeout("MostrarSecuencia()", duracion)
SecuenciaEjecutandose = true
}
function IniciarSecuencia () {
DetenerSecuencia()
imagen = 1
MostrarSecuencia()
}
</script>
</head>
<body onLoad="IniciarSecuencia()">
<img src="http://www.sat24.com/image.ashx?country=fr&type=last&time=&sat=ir" width="" height="" alt="Secuencia" name="secuencia">
</body>
</html>
He estdo pensando esta noche y la verdad que el url cambie y que la imagen que esperas llegue o no es un cacao.
Quizás seria más fàcil hacer algo así (aunque no sé como hacerlo):
La última imagen actualizada tiene un url fijo:
http://www.sat24.com/image.ashx?country=sp&type=last&time=&sat=vis
Esta imagen, en teoria, se renueva cada 15mins.
La idea seria que cada 15mins guardaras esa imagen con otro nombre y a cabo de una hora por ejemplo al tener 4 imagenes. Hacerlas correr como un gif.
Entonces, ¿Como puedo guardar imagen asociadas a una cierta hora, cambierles el nombre y luego correrlas en un gif?
Parece más complicado que lo anterior?
Tengo un lio, pq no se como hacerlo.
Un abrazo.
Ya està más o menos solucionado. Muchas gracias jeje