elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Tutorial básico de Quickjs


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  javascript que no ejecuta hasta que no recargo la pagina
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: javascript que no ejecuta hasta que no recargo la pagina  (Leído 3,274 veces)
Urpem


Desconectado Desconectado

Mensajes: 396



Ver Perfil
javascript que no ejecuta hasta que no recargo la pagina
« en: 5 Octubre 2011, 00:40 am »

Hola,
Tengo una web hecha toda con div's. El contenido principal lo tengo en una capa llamada "texto" y el contenido de esta cambia dinamicamente.
Debajo de esa capa "texto" se tiene que cargar un footer pero tengo problemas para posicionarlo.

Por necesidades de la web, la capa texto la tengo en position:relative i la del footer la tengo que hacer con absolute.

He hecho un script en javascript que cambia el margin-top de la capa footer segun la altura de la capa texto.Ese script se carga luego de cargar el contenido de la capa texto (por includes en php).
La capa footer tiene una posición inicial y el script solo actua si el contenido de la web es más largo de un mínimo establecido.
El script es este:

Código:
function Posicionar_footer()
{

var element_footer=document.getElementById("footer");
var alt_capa_text=document.getElementById("text").offsetHeight;
var alt_capa_min_size=document.getElementById("min_size").offsetHeight;
if(alt_capa_text>alt_capa_min_size)
{
element_footer.style.marginTop=alt_capa_text+230+"px";
}
}

El caso es que funciona, pero no a la primera. Es decir, la primera carga no me ejecuta el script pero si recargo la pagina por segunda vez entonces sí.
Es como si hiciera los cambios pero no se actualizara al momento el css de la pagina.

¿Como puedo hacerlo?


« Última modificación: 5 Octubre 2011, 00:44 am por Urpem » En línea

fran800m

Desconectado Desconectado

Mensajes: 204



Ver Perfil
Re: javascript que no ejecuta hasta que no recargo la pagina
« Respuesta #1 en: 5 Octubre 2011, 17:39 pm »

No has probado los clásicos alert para ver que tal? y meter el script en el head antes de body onload ?


En línea

Urpem


Desconectado Desconectado

Mensajes: 396



Ver Perfil
Re: javascript que no ejecuta hasta que no recargo la pagina
« Respuesta #2 en: 5 Octubre 2011, 21:01 pm »

Hola fran800m,
Gracias por responder. Claro que he probado con alerts para que me muestre lo que ocurre. Con eso es con lo que he visto que la primera vez no aplica los cambios y es a la segunda carga de la pagina que lo hace. Me pregunto si el hecho de cargar el contenido de la capa "text" con includes no puede tener algo que ver.
Quizas se carga el javascript antes que el php por tanto al momento de cargarse no hay contenido y se queda en la posición incorrecto. Entonces cuando recargara ya lo tendria en cache y si que lo reconocería correctamente. Imagino que debe ir por ahí la cosa.

De todos modos acabo de probar de meterlo en el <body onload=""> y funciona perfectamente. ¿Cómo no se me habia ocurrido? xD

Muchisimas gracias!!
En línea

fran800m

Desconectado Desconectado

Mensajes: 204



Ver Perfil
Re: javascript que no ejecuta hasta que no recargo la pagina
« Respuesta #3 en: 6 Octubre 2011, 01:19 am »

Un placer  ;D Lo que te vaya surgiendo lo comentas por si podemos ayudar
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines