Lo que puede suceder es que cuando se ejecuta la funcion que pasaste a
setTimeout (o sea
cargar(num)), la variable
num ya no existe. Se me ocurren 2 posibles soluciones:
1. Que declares la variable
num global para que asi, cuando se ejecute la funcion
cargar(), la varibale
num si exista y tenga un valor valido.
2. Otra opcion es que le pases el valor de
num en donde ejecutas el
setTimeout. Me explico:
Código:
setTimeout('cargar(' + num + ')',1000)