Problema con script y cambio de fotos...
Hola!, estoy utilizando un script para cambiar una serie de fotos, que están dentro de un div, haciendo click sobre ellas, una vez que llega a la última vuelve a la primera, hasta ahí todo correcto, el script funciona, el problema es que tengo varios div con imágenes dentro pero sólo funciona con el primero de ellos y no con los demás a pesar de tener todos la misma estructura...
Alguien puede hecharme una mano?...
Este es el script:
var imageObject = {
clickSwap : function(obj) {
obj.click(function() {
var activeImage = $(this).children('img.active');
activeImage.removeClass('active');
if (activeImage.next().length > 0) {
activeImage.next().addClass('active');
} else {
$(this).children('img:first-child').addClass('active');
}
return false;
});
}
};
$(function() {
imageObject.clickSwap($('#imageContainer'));
});
y estas las estructuras html:
<div id="imageContainer">
<img class="active" src="imgs/portfolio/rv1/img01.jpg" alt="rv1" />
<img src="imgs/portfolio/rv1/img01.jpg" alt="rv2" />
<img src="imgs/portfolio/rv2/img02.jpg" alt="rv3" />
<img src="imgs/portfolio/rv3/img02.jpg" alt="rv4" />
</div>
La segunda no funciona (ni la tercera, ni la cuarta....) a pesar de tener la misma estructura...
<div id="imageContainer">
<img class="active" src="imgs/portfolio/rm1/img01.jpg" alt="rm1" />
<img src="imgs/portfolio/rm1/img01.jpg" alt="rm2" />
<img src="imgs/portfolio/rm2/img02.jpg" alt="rm3" />
<img src="imgs/portfolio/rm3/img02.jpg" alt="rm4" />
</div>
Y el css:
#imageContainer img.active {
z-index: 3;
}
#imageContainer img {
cursor: pointer;
position: absolute;
top: 0px;
left: 0px;
z-index: 1;
}
Un saludo y gracias de antemano...
Alo
Por cierto.. gracias feliper por tu consejo... efectivamente he puesto una clase y funciona correctamente!
Gracias!
Alo
Efectivamente utilizo Jquery, se me olvido comentar que los div no están todos juntos en la misma página... aparecen conforme se les llama desde un link... con lo cual solo hay un div llamado "imageContainer" cada vez...
Gracias por tu respuesta!
feliper
Hola,
no puedes poner el mismo ID a todos los DIV, se tienen que llamar distinto, por eso solo te funciona el primero,
creo que estás usando Jquery, otra opción es que en vez de ID les pongas CLASS a los DIVs ...
ID, tiene que ser único, un solo elemento
CLASS, muchos elementos pueden tener la misma clase
saludos !!