Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Bucle 'while' con 'animate'

Estas en el tema de Bucle 'while' con 'animate' en el foro de Frameworks JS en Foros del Web. Buenas, no suelo preguntar en foros por que siempre encuentro solución en google pero no encuentro este caso y os agradeceria que me echarais una ...
  #1 (permalink)  
Antiguo 03/03/2012, 13:46
 
Fecha de Ingreso: mayo-2011
Mensajes: 5
Antigüedad: 12 años, 11 meses
Puntos: 0
Pregunta Bucle 'while' con 'animate'

Buenas, no suelo preguntar en foros por que siempre encuentro solución en google pero no encuentro este caso y os agradeceria que me echarais una mano!

Estoy haciendo un rss feed, quiero recojer el height de cada noticia de las varias que van pasando por un cuadro con el overflow en hidden

Quiero que vayan pasando una a una, haciendo una pequeña pausa en cada movimiento, daba por hecho que con un while me repetiría la animación mientras el contador llegue al tope.

El problema es que la animación solo se ejecuta una vez, y el contador llega al tope sin volverse a ejecutar:

function animarRssN ()
{
var nothei = parseInt($('#noticia').css('height')); //height de la noticia
var rsshei = parseInt($('#rss').height()); //height de todas las noticias
var cenhei = $('#centro').height(); //height div rss principal
var resto = cenhei - rsshei; // pixeles que necesita moverse hasta el final
var restopos= resto * -1; // valor del tope
$('#rss').delay(1000); //retraso de 1 seg
var contador=0;
var pos= $('#rss').css(top);

while(contador<restops)
{
$('#rss').animate({top:-nothei},300)).delay(500);
$contador+=nothei;
$('#control').html(contador,'<br/>',pos); // indicador del contador
}

}

Gracias de antemano, seguro que es un fallo de principiante , se que el while debería repetir el proceso desde el principio pero no lo hace.

Saludos
  #2 (permalink)  
Antiguo 03/03/2012, 18:01
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 8 meses
Puntos: 1532
Respuesta: Bucle 'while' con 'animate'

no lo hace porque le está indicando variables diferentes, contador y $contador no son la misma variable
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 06/03/2012, 02:25
 
Fecha de Ingreso: mayo-2011
Mensajes: 5
Antigüedad: 12 años, 11 meses
Puntos: 0
Respuesta: Bucle 'while' con 'animate'

Buenas, antes que nada gracias por la ayuda:

He comprimido el problema hasta esto:

$cont=0;
while($cont<550)
{
$('#rss').animate({left:250},300).delay(500);
$cont++;
$('#control').html($cont); // indicador del contador
}

Aun así me realiza la animación hasta 250px una sola vez, y me suma los 550 al contador. Estoy acostumbrado a usar el while en PHP y hay que volver a crear el array, por ejemplo, al final del bucle.

¿Deberia hacer algun tipo de callback?

Gracias! dejo un enlaze a jsfiddle para que se vea mejor. http://jsfiddle.net/pablocrs/qKRUG/

Saludos

Etiquetas: jquery
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 13:36.