Foros del Web » Programando para Internet » Javascript »

cambiar atributo css progresibo

Estas en el tema de cambiar atributo css progresibo en el foro de Javascript en Foros del Web. Hola, haber si alguien se anima aecharme una mano , que tengo la cabeza perdia. al tajo. teng oun div donde le voy a cargar ...
  #1 (permalink)  
Antiguo 15/12/2009, 16:26
 
Fecha de Ingreso: agosto-2008
Mensajes: 29
Antigüedad: 15 años, 8 meses
Puntos: 0
cambiar atributo css progresibo

Hola, haber si alguien se anima aecharme una mano , que tengo la cabeza perdia.
al tajo.
teng oun div donde le voy a cargar una foto
Código:
#argazkia {
background-image : url('images/loading.gif');
background-position : center center;
background-repeat : no-repeat;
border: 1px solid #FFF;
margin:auto;
width:400px;
height:400px;}
tengo el div con la foto insertado dentro pero escondido.
Código:
#img { 
visibility:hidden;

  }
Lo que me gustaria seria una ver cargada la foto acerla aparecer, pero primero agrandar el div argazkiak al tamaño de lafo

Código:
function getImgSize(imgSrc)
{
var newImg = new Image();
newImg.src = imgSrc;
var height = newImg.height;
var width = newImg.width;
var inicio=400;
var heightpx = height+10+'px';
var widthpx = width+10+'px';
var widthtop = width+10;
var heighttop = height+10;
do { 
inicio=inicio+10;
document.getElementById('argazkia').style.width = inicio;

}while ( inicio < widthtop);

do { 
inicio=inicio+10;
document.getElementById('argazkia').style.height = inicio;

}while ( inicio < heighttop);
 };
con esta funcion consig oque el div coja la anchura y altura necesaria pero lo hace de golpe, me gustaria poder hacerlo progresibo, no se ne 1500 milisegundos o hasi....
he probado con settimeout pero no lo consigo.......alguien puede echarme una mano?,
  #2 (permalink)  
Antiguo 15/12/2009, 16:43
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: cambiar atributo css progresibo

Hola.

Los temporizadores en javascript son setInterval y setTimeout... el primero se repite indefinidamente y el segundo solo una vez... aunque ambos pueden cancelarse... lo que me extraña es que puedas usar el tamaño de la imagen inmediatamente después de asignarles el src... supongo que habrás hecho tus pruebas sin subir la página...

En principio, es mejor usar el evento load de las imágenes para obtener los atributos de las dimensiones de forma fiable...

Cuéntanos tus progresos...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 16/12/2009, 06:50
 
Fecha de Ingreso: agosto-2008
Mensajes: 29
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: cambiar atributo css progresibo

ok ,lo estoi intentando, pero me pasa lo siguiente
tras obtener los datos de la foto, ejecuto lo siguiente

Código:
function subir(widthfoto, inicio){
document.getElementById('argazkia').style.width = inicio;
inicio=inicio+10;
if ( inicio < widthfoto ){
setTimeout ( "subir(widthfoto,inicio)",1000);
};
}
al ejecutar la funcio mo funciona porque no se como reenbiarle a la funcion las variables widthfoto y inicio . y parece que si uso setTimeout no le puedo enviar las variables como esta en el ejemplo...se puede hacer de otra manera?
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 07:23.