Comunidad de diseño web y desarrollo en internet online

Javascript con iframe

Citar            
MensajeEscrito el 21 Feb 2008 02:59 pm
como estan todos por aqui, entro a este foro porque tengo un gran problema,
para empezar les digo que yo no se mucho por no decir casi nada javascript,
:crap: , pero espero entiendan esta inquietud y me puedan ayudar,
miren yo eh hecho paginas web con iframes, los cuales los uso como contenedores,
esto hace q al hacer un refresh para cambiar de pagina solo cambie el
contenido del iframe, y creo no estoy seguro, esto seria algo como ajax,
asta ahi va bien :lol: , ahora una ves me surgio un problema, el cual es,
quetal si la pagina que cargara el iframe es mas grande q este, entonces
encontre una pequeña funcion en javascript que hace que el iframe cresca
en tamaña deacuerdo a su contenido, entonces asi todo queda perfecto,
:wink: , pero el problema es que esto funciona en IE muy bien, pero cuando
ves la pagina en firefox la funcion javascript no funciona, o eso es lo que yo
almenos sospecho, el caso es que el iframe no crece deacuerdo a su contenido,
y esto es un gran problema, puesto que hay gente que usa el firefox, les dejo
la funcion para la cheken, y de esa forma me puedan dar una mano con esto...

Código :

function crece() {

  document.getElementById("ifrm").height =
document.getElementById("ifrm").document.body.scrollHeight;
 document.getElementById("ifrm").height =
document.getElementById("ifrm").contentWindow.document.body.scrollHeight;
}


y llamo a la funcion desde el iframe asi por medio del id

Código :

<iframe name="contenedor" id="ifrm" frameborder="0" onload="crece()" width="820" scrolling="no"
 src="home.html" ></iframe>

espero me puedan ayudar, saludos a todos, se acepta todas las sugerencias.... :cry: [/code]

Por leon2086

76 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 21 Feb 2008 03:55 pm
No entiendo eso... de que crezca el iframe según su contenido...
ein?
puedes poner URL de ejemplo?

Por El Oso Amoroso

Claber

1780 de clabLevel

6 tutoriales

 

Madrid, España, Europa, Eurasia, La Tierra, Sist.Solar, Vía Láctea, UNIVERSO

firefox
Citar            
MensajeEscrito el 21 Feb 2008 04:09 pm
claro mira este ejemplo http://www.leonyrosario.com, si te fijas lo que cambia es la parte de abaja mas la cabeza siempre esta permanente, esto me da un punto a favor como por ejemplo, si ves en la cabeza esta el sonido, entonces cuando refresque la pagina, solo se refrescara el iframe con su nuevo contenido, pero el sonido que se esta cargando en la cabeza seguira corriendo, y esto implica que no se corte en el refresco del browser, ahora si lo vez en firefox esto no funciona, espero me puedas ayudar.....

Por leon2086

76 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 21 Feb 2008 04:17 pm
weno disculpa pero la pagina que te di ya no esta al aire o no se que pasa con el servidor, pero en esta si puedes ver lo del iframe en su plenitud, http://www.corporacionvansa.com , ahora si espero me puedas ayudar.......

Por leon2086

76 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 21 Feb 2008 06:21 pm
"body.scrollHeight" es un método propio de IExplorer, con lo que no es válido en los demás.
El equivalente en Mozilla-FireFox, es "window.pageYOffset", pero no funciona igual.

En cualquier caso... veamos...
Me parece que los iframes NO se deberían redimensionar.
Deberías preocuparte de hacer que todas las páginas tuvieran el mismo alto, y así no necesitarías esos cambios de tamaño (que por otro lado, le dan un aspecto un poco... "impreciso" a la WEB)
De paso, evitas tanto javascript, que lo hace incompatible con navegadores que no lo soporten, o con clientes que lo hayan deshabilitado.

Por El Oso Amoroso

Claber

1780 de clabLevel

6 tutoriales

 

Madrid, España, Europa, Eurasia, La Tierra, Sist.Solar, Vía Láctea, UNIVERSO

firefox
Citar            
MensajeEscrito el 21 Feb 2008 06:45 pm
weno gracias por la recomendacion, si no es mucha molestia, como haplicarias en la funcion el window.pageYOffset ????
...... te lo agradeceria mucho....

Por leon2086

76 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 21 Feb 2008 07:26 pm
No lo aplicaría.
Me molestaría en hacer que todas las páginas tuvieran el mismo alto, y así no redimensionar el <iframe> (que queda algo cutre...)

En cualquier caso... "pageYOffset" trabaja de otra manera.
Creo que para Mozilla-FireFox, usaría "document.body.offsetHeight"
(pero ya te digo: es un error de principios, tratar de redimensionar un IFRAME)

Por El Oso Amoroso

Claber

1780 de clabLevel

6 tutoriales

 

Madrid, España, Europa, Eurasia, La Tierra, Sist.Solar, Vía Láctea, UNIVERSO

firefox
Citar            
MensajeEscrito el 21 Feb 2008 08:50 pm
esta bien, pero a mi aveses en algunas paginas como por ejemplo la que te mostre, me resulto realmente muy util, pero en fin agradesco tu que te hayas dado el tiempo de responderme , igual seguire buscando, saludos.....

Por leon2086

76 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 21 Feb 2008 08:56 pm
Siempre está bien ver lo que otros hacen... pero no siempre es acertado copiar lo que se ve...
En este caso... creo que te podrías quedar con el objetivo (el iframe) y con el "efecto marquesina" con el que aparece la página dentro de él.

La marquesína, se podría hacer con Mootools, o con jQuery.

Por El Oso Amoroso

Claber

1780 de clabLevel

6 tutoriales

 

Madrid, España, Europa, Eurasia, La Tierra, Sist.Solar, Vía Láctea, UNIVERSO

firefox
Citar            
MensajeEscrito el 21 Feb 2008 09:19 pm
ta weno pzzz...........

Por leon2086

76 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 31 Mar 2009 10:33 pm
lo mejor que puedes hacer es que cada pagina que quieres cargar en el iframe tenga un script como este:

<html>
<head>
<script>
resize(){
if (window.frameElement.height && document.body.scrollHeight) {
window.frameElement.height = parseInt(document.body.scrollHeight);
}
}

</script>
</head>
<body onLoad="resize()">
...
...
...
</html>


ya con esto cada que se cargue una pagina en el iframe esta actualizara el tamaño del iframe

Por SchattenAngst

0 de clabLevel



 

firefox
Citar            
MensajeEscrito el 29 Jul 2009 01:51 pm
hola,

gracias por el dato SchattenAngst pero lo probe y me da error en el javascript, si pudieras probarlo antes y asi ver el error para que toda la comunidad pueda probarlo estaria exelente :P

mil gracias XD

Por leon2086

76 de clabLevel



Genero:Masculino  

msie8

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.