Foros del Web » Programando para Internet » Javascript »

Redimensionar ventana creada con una funcion

Estas en el tema de Redimensionar ventana creada con una funcion en el foro de Javascript en Foros del Web. Hola, esta es mi primera vez... Bueno, tengo un problemilla con una función. A esta función le paso una imagen como parámetro, y lo que ...
  #1 (permalink)  
Antiguo 30/12/2004, 09:26
 
Fecha de Ingreso: diciembre-2004
Mensajes: 2
Antigüedad: 19 años, 4 meses
Puntos: 0
Redimensionar ventana creada con una funcion

Hola, esta es mi primera vez...
Bueno, tengo un problemilla con una función. A esta función le paso una imagen como parámetro, y lo que debería hacer es abrir una ventana con el tamaño de esa imagen, que puede ser cualquier tamaño. Bien, la ventana la abre, no redimensiona la ventana con el tamaño de la imagen por que la imagen, parece, la carga después, así que al crear la ventana desconoce la imagen y su tamaño. Le he añadido una función para pre-cargar la imagen, pero no hace nada. En la función resize () he agregado un else, para redimiensionar la ventana a un tamaño prefijado, pero tampoco hace caso a ese else. Espero haberme explicado.

No conozco mucho el lenguaje, por eso puedo cometer algún fallo de principiante.

Podría ayudarme alguien? Gracias




function abreFoto(s)
{
var fotoWin = window.open("","INI","toolbar=0,location=0,directo ries=0,status=yes,menubar=0,scrollbars=yes, resizable=yes, top=0, left=0");
var myHTML =
'<html><head><title>GALERIA DE FOTOS</title>'
+ '<script language="JavaScript">'
+ 'img = new Image();'
+ 'img.src = "'+s+'";'
+ 'function MM_preloadImages() {var d=document;'
+ 'if(d.images){if(!d.MM_p) d.MM_p=new Array();'
+ 'var i,j=d.MM_p.length,a=MM_preloadImages.arguments;'
+ 'for(i=0; i<a.length; i++)if (a[i].indexOf("#")!=0){d.MM_p[j]=new Image;d.MM_p[j++].src=a[i];}}}'
+ 'MM_preloadImages(img.src);'
+ 'var i=0;'
+ 'function resize() {'
+ 'if (navigator.appName == "Netscape") i=40;'
+ 'if (document.images[0]) window.resizeTo(document.images[0].width +30, document.images[0].height+60-i);'
+ 'else window.resizeTo(500, 400);'
+ 'self.focus();}'
+ '</script>'
+ '</head>'
+ '<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" onLoad="MM_preloadImages(img.src);">'
+ '<table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0">'
+ '<tr><td align="center" valign="middle"><img src="'+s+'"></td></tr></table></body></html>'
+ '<script>setTimeout("resize ()",500) ;</script>';
fotoWin.document.write(myHTML);
}
  #2 (permalink)  
Antiguo 30/12/2004, 09:52
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Cambia window.resizeTo
por fotoWin.resizeTo

Un saludo y bienvenido!
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #3 (permalink)  
Antiguo 30/12/2004, 13:08
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Hola julyto y KarlanKas :

julyto: bienvenido a los foros.

Si quieres que el popup se abra con las dimensiones de la imagen, puedes hacerlo con el script que puse en este otro mensaje: http://www.forosdelweb.com/f13/pop-tamano-imagen-213538/ o también con el script que puso tunait en las FAQs: http://www.forosdelweb.com/f13/faqs-javascript-105325-post266896/

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 31/12/2004, 03:39
 
Fecha de Ingreso: diciembre-2004
Mensajes: 2
Antigüedad: 19 años, 4 meses
Puntos: 0
Muchas gracias caricatos. He revisado los dos códigos que me has pasado y al final he utilizado el de tunait con algun retoque, necesitaba las barras de scroll. El tuyo funciona perfectamente pero tarda un poquito en abrir la ventana, y ya sabes q los usuarios son muy impacientes y algo no les funciona al instante vuelven a pinchar y pinchar y al final acaban cerrando las cosas pq creen q no les funciona.

De nuevo muchas gracias.

Saludos
  #5 (permalink)  
Antiguo 31/12/2004, 04:26
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Hola otra vez:

Me alegro de que te sirviera... Te propuse más de una opción para que eligieras, y los códigos de tunait (¡Hola !) son muy buenos.
La tardanza siempre dependerá del peso de las imágenes, y si bien tu elección abre la ventana antes, con las mismas imágenes en los 2 casos deberían tardar lo mismo en mostrarse, ya que el método mio hace una precarga antes de abrir la ventana, pero luego se muestra inmediatamente... (al menos teóricamente debería ser así)

Saludos y felicidades
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:14.