Foros del Web » Programando para Internet » Javascript »

Detectar tamaño de una imagen que no está cargada

Estas en el tema de Detectar tamaño de una imagen que no está cargada en el foro de Javascript en Foros del Web. Hola a tod@s, ¿cómo puedo saber el tamaño de una imagen en el caso que no tenga un tag <img> en la página? Albert Lanchas...
  #1 (permalink)  
Antiguo 10/08/2006, 04:26
 
Fecha de Ingreso: agosto-2006
Mensajes: 41
Antigüedad: 17 años, 9 meses
Puntos: 2
Detectar tamaño de una imagen que no está cargada

Hola a tod@s,

¿cómo puedo saber el tamaño de una imagen en el caso que no tenga un tag <img> en la página?

Albert Lanchas
  #2 (permalink)  
Antiguo 10/08/2006, 04:55
Avatar de djreficul  
Fecha de Ingreso: julio-2006
Ubicación: Cork
Mensajes: 672
Antigüedad: 17 años, 10 meses
Puntos: 0
Tal vez te sea más simple obtenerlo con código de servidor.

Por ejemplo en PHP se usa la función getimagesize y podrías pasar esos atributos a tu código html o javascript sin problemas...

Saludos.
__________________
La muerte es un camino que todos debemos recorrer...
  #3 (permalink)  
Antiguo 10/08/2006, 05:27
 
Fecha de Ingreso: agosto-2006
Mensajes: 41
Antigüedad: 17 años, 9 meses
Puntos: 2
Gracias por la respuesta djreficul pero necesito un opción que sea client-side :(

Albert Lanchas
  #4 (permalink)  
Antiguo 10/08/2006, 05:28
Avatar de djreficul  
Fecha de Ingreso: julio-2006
Ubicación: Cork
Mensajes: 672
Antigüedad: 17 años, 10 meses
Puntos: 0
La imagen está en tu sitio web o pertenece a una q se dispone a subir el cliente?

Saludos.

AÑADO: Mira aquí

P.D.: Si usáramos el buscador...
__________________
La muerte es un camino que todos debemos recorrer...

Última edición por djreficul; 10/08/2006 a las 05:43
  #5 (permalink)  
Antiguo 10/08/2006, 06:38
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:

Si bien el código del enlace es correcto, no siempre es fiable el valor que se obtiene de esa manera si la imagen aún no está en memoria por lo que una pequeña precarga puede ser mejor:

var imagen = new Image();
imagen.src = "pepe.jpg";
cargando();

...

Function cargando() {
if (imagen.complete) {
ancho = imagen.width;
alto = imagen.height;
}
else
setTimeout("cargando()", 100);
}

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #6 (permalink)  
Antiguo 10/08/2006, 11:48
 
Fecha de Ingreso: agosto-2006
Mensajes: 41
Antigüedad: 17 años, 9 meses
Puntos: 2
Igual lo más fácil es que explique lo que quiero hacer.

Construyo unos elementos <a href> dinámicamente que tienen un evento onclick asociado que hace un window.open de una imagen. Quiero conocer el tamaño de la imagen para pasárselo al window.open.

Me gustaría evitar cargar todas las imágenes para conocer su tamaño. ¿Tiene sentido? ¿Hay alguna manera de hacerlo?

Albert Lanchas
  #7 (permalink)  
Antiguo 10/08/2006, 11:53
Avatar de djreficul  
Fecha de Ingreso: julio-2006
Ubicación: Cork
Mensajes: 672
Antigüedad: 17 años, 10 meses
Puntos: 0
Une lo q caricatos ha expuesto en una función y llama a dicha función en el onclick... Por ejemplo:

Código HTML:
function muestraimagen(rutaimagen) {
var imagen = new Image();
imagen.src = rutaimagen;
cargando();
}
function cargando() {
if (imagen.complete) {
ancho = imagen.width;
alto = imagen.height;
//Y aqui ya el window.open etc...
} else {
setTimeout("cargando()", 100);
}
}
Saludos.

AÑADO: De alguna manera debes mencionarle a la peña q sea paciente x si tarda algo más de la cuenta...
__________________
La muerte es un camino que todos debemos recorrer...
  #8 (permalink)  
Antiguo 10/08/2006, 20:07
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:

En este mensaje: Pop al tamaño de la Imagen se trata el mismo asunto. También hay algo en las FAQs javascript...

Si lo que quieres es usar un script no deberías usar los tags "a" ya que su valor semántico es "enlazar"... para ejecutar un script puedes usar cualquier tag, los más habituales son los botones, pero si te interesa la apariencia de un enlace puedes conseguirlo con estilos)

Saludos
__________________
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 05:59.