Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/10/2009, 09:48
Avatar de ceSharp
ceSharp
 
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 16 años, 4 meses
Puntos: 66
Respuesta: galería de imágenes

Hola solounaduda,

los link anterior y siguiente no te llevan a ningún sitio porque les estás pasando un valor que no existe (valor-- ó valor++), por tanto así no vas a conseguirlo.
Este es un ejemplo de como deberías de implementarlo:
-----------------------------------------------------------------------------
<script type="text/javascript">
var posicionImagen = new Number(0);
function cargar(valor)
{
var imgArray = new Array();
imgArray = ['001','002','003a','003b','004'];
if(isNaN(valor))
{
if(valor == 'mas')
{
//antes de mostrar debemos asegurarnos de que la posición del array existe
if(posicionImagen + 1 > 4)
{/*como no hay esa posición del array mostrarmos alerta, no hacemos nada, etc*/}
else
{
document.imagen.src = "Imgs/" + imgArray[posicionImagen + 1] + ".jpg";
posicionImagen +=1;
document.getElementById("nombre").innerHTML = imgArray[posicionImagen];
}
}
else
{ //si no es 'mas' debe ser 'menos'...
//antes de mostrar debemos asegurarnos de que la posición del array existe
if(posicionImagen - 1 < 0)
{/*como no hay esa posición del array mostrarmos alerta, no hacemos nada, etc*/}
else
{
document.imagen.src = "Imgs/" + imgArray[posicionImagen - 1] + ".jpg";
posicionImagen -=1;
document.getElementById("nombre").innerHTML = imgArray[posicionImagen];
}
}
}
else
{
//como es numero mostramos la imagen solicitada
document.imagen.src = "Imgs/" + imgArray[valor] + ".jpg";
posicionImagen = valor;
document.getElementById("nombre").innerHTML = imgArray[posicionImagen];

}

}
</script>
<body>
<div>
<table>
<tr><td id="nombre">001</td></tr>
<tr><td>
<img name="imagen" src="Imgs/001.jpg">
</td></tr>
<tr><td>
<a href="JavaScript:cargar('menos');">ANTERIOR</a>
</td><td>
<a href="JavaScript:cargar('mas');">SIGUIENTE</a>
</td></tr>
</table>
<a href="JavaScript:cargar('0');">1</a>
<a href="JavaScript:cargar('1');">2</a>
<a href="JavaScript:cargar('2');">3 a</a>
<a href="JavaScript:cargar('3');">3 b</a>
<a href="JavaScript:cargar('4');">4</a>
</div>
-----------------------------------------------------------------
más o menos tu código con algunas modificaciones. En primer lugar cargamos en un array los nombres de tus imágenes y creamos una variable global que controla la posición que estamos mostrando en la web. Cuando pinchas en los nombres de las imagenes no hay problema; cargamos imagen y almacenamos la posición del array.
cuando damos a ANTERIOR y SIGUIENTE aumentamos o disminuimos una posición del array, mostramos imagen y almacenamos posición.
Seguro que hay otras formas de hacerlo, más fácil, menos código, pero bueno, así ves un poco como se trabaja con Arrays.

Pruébalo, y a ver que te parece así.

salu2