JQuery - agregar y remover clases con delay

   
Vista:

agregar y remover clases con delay

Publicado por Martin (2 intervenciones) el 11/02/2015 01:33:19
Hola:

Necesito hacer una funcion JQuery que, a cada imagen le agregue una clase css y luego de un delay se la remueva y luego haga lo mismo con la siguiente imagen.

En mi pagina html tengo:

1
2
3
4
5
6
7
8
9
10
11
<h2>Seleccione una tematica</h2>
<div id="container">
<p:dataGrid  value="#{backingTematicas.tematicas}" var="tematica" columns="4">
    <h:form enctype="multipart/form-data">
 
        <div id="img">
            <a href="#"> <h:graphicImage  class="no-selected" value="imagen/#{tematica.img_path}"/></a>
        </div>
    </h:form>
</p:dataGrid>
</div>

Y habia intentado hacer la siguiente funcion jQuery, que funciona pero lo hace con una sola imagen, nunca pasa a la siguiente, supongo que me falta un each() o algo por el estilo:

1
2
3
4
5
6
7
$(document).ready(function(){
     $("#img").addClass("selected");
     var delay = setTimeout(function() {
        $("#img").removeClass("selected");
    }, 2000);
 
});

Espero su ayuda!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

agregar y remover clases con delay

Publicado por xve (557 intervenciones) el 11/02/2015 09:32:11
Hola Martin, la manera que yo lo haría, seria primero capturar todas las imágenes en un array de valores con each() y luego ir moviéndome con el índice del array para ir haciendo las modificaciones en las imágenes que estas indicando.

No se si me he dado a entender...

En tu ejemplo, veo que únicamente hay una imagen, no?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

agregar y remover clases con delay

Publicado por Martin (2 intervenciones) el 11/02/2015 22:20:36
Hola:
Mi ejemplo de jquery lo hace con una sola imagen, pero en la pagina tengo tantas imagenes como haya el el array de tematicas, se crean dinamicamente, ahora tengo 3.

Lo que tu dices es que haga algo asi:

var imagenes= $("div.img"); ??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar