Foros del Web » Programando para Internet » Javascript »

Problemas para leer el ancho de una imagen con Explorer

Estas en el tema de Problemas para leer el ancho de una imagen con Explorer en el foro de Javascript en Foros del Web. Tengo lo siguiente para mostrar una imagen con descripcion en un layer: Código HTML: showFotos.prototype.setMsg = function (ft,ti) { var ths = this; // ths.glb.box ...
  #1 (permalink)  
Antiguo 13/03/2011, 17:47
Avatar de junihh  
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 20 años, 2 meses
Puntos: 7
Problemas para leer el ancho de una imagen con Explorer

Tengo lo siguiente para mostrar una imagen con descripcion en un layer:

Código HTML:
showFotos.prototype.setMsg = function (ft,ti)
{
	var ths = this;
	//
	ths.glb.box = document.createElement ('div');
	ths.glb.box.className = 'shBox';
	document.body.appendChild (ths.glb.box);
	ths.glb.box.style.display = 'none';
	//
	var fdo = document.createElement ('div');
	fdo.className = 'shBox_fdo';
	ths.glb.box.appendChild (fdo);
	//
	var cnt = document.createElement ('div');
	cnt.className = 'shBox_cnt';
	ths.glb.box.appendChild (cnt);
	//
	var img = new Image ();
	img.onload = function ()
	{
		var fot = document.createElement ('img');
		fot.src = ft;
		cnt.appendChild (fot);
		//
		var tit = document.createElement ('p');
		tit.innerHTML = ti;
		cnt.appendChild (tit);
		//
		var fotW = fot.width; // Calculando el ancho de la imagen
		cnt.style.width = fotW + 'px';
		cnt.style.left = ((ths.winWH('w') - fotW) / 2) + 'px';
		//
		ths.glb.box.onmouseover = function () { this.style.cursor = 'pointer'; };
		ths.glb.box.onclick = function () { document.body.removeChild (this); };
		//
		ths.glb.box.style.display = 'block';
	};
	img.src = ft;
};
Funciona perfectamente con cualquier otro navegador que no sea el nefasto Internet Explorer. Investigue por el mismo problema y la solucion es similar a esta que uso, asi que ya me siento de brazos cruzados.

¿Alguna idea como calcular el ancho a la imagen en IE? Sin ese dato, el layer que contiene la imagen no puede asumir el ancho de esta ni mostrar la descripcion bien. Aqui una muestra de lo que tengo.
__________________
JuniHH
- Mi blog
- Mi portafolio
  #2 (permalink)  
Antiguo 13/03/2011, 21:06
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 19 años, 10 meses
Puntos: 834
Respuesta: Problemas para leer el ancho de una imagen con Explorer

En lugar de:
Código PHP:
var fotW fot.width// Calculando el ancho de la imagen 
Probaste?:
Código PHP:
var fotW this.width// Calculando el ancho de la imagen 
  #3 (permalink)  
Antiguo 14/03/2011, 06:54
Avatar de junihh  
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 20 años, 2 meses
Puntos: 7
Respuesta: Problemas para leer el ancho de una imagen con Explorer

Cita:
Iniciado por Panino5001 Ver Mensaje
Probaste?:
Código PHP:
var fotW this.width// Calculando el ancho de la imagen 

Tenias razon, funciono bastante bien. Es que entendia que al momento de cargar "fot" y pretender usar su ancho, este usaba el cache de "img" cargado antes. Realmente te agradezco tu ayuda viejo, gracias.
__________________
JuniHH
- Mi blog
- Mi portafolio

Etiquetas: ancho, explorer
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 17:07.