Foros del Web » Programando para Internet » Javascript »

galería de imágenes

Estas en el tema de galería de imágenes en el foro de Javascript en Foros del Web. Se ve que la vez anterior no quedo claro mi problema... En el siguiente código yo tengo unos links que DEBERIAN llevarme a la imagen ...
  #1 (permalink)  
Antiguo 27/10/2009, 08:52
 
Fecha de Ingreso: julio-2009
Mensajes: 15
Antigüedad: 14 años, 9 meses
Puntos: 0
galería de imágenes

Se ve que la vez anterior no quedo claro mi problema...
En el siguiente código yo tengo unos links que DEBERIAN llevarme a la imagen anterior y a la siguiente, pero no sucede...
También me gustaría que en el caso de los que tengo números con letras me lleve, por ejemplo, del 2 al 3a, del 3a al 3b y del 3b al 4.

Código:
<script type="text/javascript">
function cargar(valor) {  
document.imagen.src = "URL" + valor + ".jpg";
document.getElementById("nombre").innerHTML = valor;
}
</script>

<body>

<div>
<table>
<tr><td id="nombre">001</td></tr>

<tr><td>

<img name="imagen" src="URL/001.jpg">

</td></tr>
<tr><td>
<a href="JavaScript:cargar(valor--);">ANTERIOR</a>
</td><td>
<a href="JavaScript:cargar(valor++);">SIGUIENTE</a>
</td></tr>
</table>

<a href="JavaScript:cargar('001');">1</a>
<a href="JavaScript:cargar('002');">2</a>
<a href="JavaScript:cargar('003a');">3 a</a>
<a href="JavaScript:cargar('003b');">3 b</a>
<a href="JavaScript:cargar('004');">4</a>
AYUDA?
  #2 (permalink)  
Antiguo 27/10/2009, 09:48
Avatar de ceSharp  
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 15 años, 6 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
  #3 (permalink)  
Antiguo 27/10/2009, 09:50
Avatar de ceSharp  
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 15 años, 6 meses
Puntos: 66
Respuesta: galería de imágenes

...yo y mis descuidos, jejejejej

en vez de URL he puesto Imgs... es que para emular tu código lo he adaptado a mis cositas...
cambia donde veas Imgs y pon URL y te funcionará a tí

salu2 again!
  #4 (permalink)  
Antiguo 30/10/2009, 15:48
 
Fecha de Ingreso: julio-2009
Mensajes: 15
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: galería de imágenes

wow, es mas dificil de lo que pensaba, me lo esperaba un poco mas corto...
lo voy a probar y te cuento
gracias ceSharp!
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 12:31.