Bueno he ido cambiando el codigo y modificandolo y al final me ha quedado esto:
Código HTML:
<script language="JavaScript" type="text/javascript">
// cojo la hora del servidor para saber la hora actualizada
h = H.getHours()
m = H.getMinutes()
s = H.getSeconds()
d = H.getDate()
mm = H.getMonth()
y = H.getFullYear()
// cojo la hora del servidor para sumarle la espera.
h_estatica = H.getHours()
m_estatica = H.getMinutes()
s_estatica = H.getSeconds()
d_estatica = H.getDate()
mm_estatica = H.getMonth()
y_estatica = H.getFullYear()
function laHora(){
// hora del servidor
H2 = new Date(y,d,mm,h,m,s+1)
h = H2.getHours() ; h2 = h
m = H2.getMinutes() ; m2 = m
s = H2.getSeconds() ; s2 = s
// espera he puesto estos valores para comprobar que vaya bien
var horas_espera = 0
var minutos_espera = 1
var segundos_espera= 10
// Aqui tengo la hora del servidor en el momento en que hago la cuenta atras y le sumo la espera
H_estatica = new Date (y_estatica,d_estatica,mm_estatica,h_estatica,m_estatica,s_estatica)
horasF = H_estatica.getHours() + horas_espera
minutosF = H_estatica.getMinutes() + minutos_espera
segundosF = H_estatica.getSeconds() + segundos_espera
// aqui recojo el tiempo de espera que se va recortando de la operacion hora servidor + espera - hora servidor_actualizada
esperaH = horasF - H2.getHours(); esperaH2 = esperaH
esperaM = minutosF - H2.getMinutes(); esperaM2 = esperaM
esperaS = segundosF - H2.getSeconds(); esperaS2 = esperaS
// esto es para controlar la salida
if(esperaH<10){esperaH2= "0" + esperaH}
if(esperaM<10){esperaM2 = "0" + esperaM}
if(esperaS<10){esperaS2 = "0" + esperaS}
document.getElementById('reloj').firstChild.nodeValue = "Cuenta Atras: " + esperaH2 + ":" + esperaM2+ ":" + esperaS2
}
onload = function(){laHora();setInterval('laHora()',1000)
}
</script>
Bueno ahora vienen algunos problemas.
El primero es que cuando se printa la cuenta atras al llegar a 1 minuto 02 segundos pasa a 62 segundos, y luego cuando llega a 30 segundos, se vuelve loco y pone -1 minuto 60 sgundos... no entiendo el porque la verdad. Otro problema es como puede hacer que se pare en 00:00:00. Creo que es con la sentencia exit, pero aun no domino mucho el JS.
Por favor si veis algun error o sabeis que puedo estar haciendo mal echarme una manilla, gracias como siempre por vuestro tiempo, y saludos!!