Ver Mensaje Individual
  #2 (permalink)  
Antiguo 24/07/2002, 09:29
Avatar de tunait
tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 23 años, 6 meses
Puntos: 381
Re: Presentaciones

:) Hola Caricatos,

pues si, efectivamente salían un poco chaparras las imágenes, jé. Oye... eso de imalto -- e imancho -- ¿qué indica??? primera vez que lo veo. He intentado deducir lo que hace pero lo dicho, primer encuentro.

Bueno, he hecho una modificación y parece que ahora le gusta más y las imágenes salen proporcionadas.

Te cuento:

Se trata de que si la imagen no es más alta que el area disponible de pantalla se deje su tamaño original pero si es más grande que la redimensione.

Como si la ajustamos en base al ancho es muy fácil que el alto rebase el area de visualización le he pedido que siempre ajuste al alto y luego ponga el ancho según el alto.

Resumiendo.

Si el alto de la imagen es mayor que el alto disponible el alto de la imagen se adapta al alto disponible. Luego se mira qué porcentaje del alto original hemos usado y se le aplica el mismo porcentaje al ancho e voilá!!

Además he metido la imagen en una celda para que las pequeñas se centren verticalmente.

<html>
<head>
<script language="javascript">
var fichas = "imagen1.jpg,imagen2.jpg,imagen3.jpg,imagen4. jpg,imagen5.jpg";
var ficheros = fichas.split(",");
var actual = 0;
function presentar(){
var im = new Image();
im.src = ficheros[actual];
var imalto = im.height;
var imancho = im.width;


if (imalto > alto )
{
porcentaje=100/imalto*alto
imalto=alto;
imancho =imancho*porcentaje/100;
}


document.getElementById("presente").src = im.src;
document.getElementById("presente").widt h = imancho;
document.getElementById("presente").heig ht = imalto;
if (actual == ficheros.length - 1)
actual = 0;
else
actual ++;
setTimeout("presentar()", 3000);
}

var alto, ancho;
function ini() {
alto = document.body.offsetHeight;
ancho = document.body.offsetWidth-20;
presentar();
}
</script>
</head>