Foros del Web » Programando para Internet » Javascript »

slide show

Estas en el tema de slide show en el foro de Javascript en Foros del Web. estoy haciendo una pagina de mi pueblo y tengo muchas fotografias,me gustaria hacer un "slide show" horizontal donde las imagenes fueran pasando en un tamaño ...
  #1 (permalink)  
Antiguo 28/06/2002, 18:45
 
Fecha de Ingreso: junio-2002
Mensajes: 16
Antigüedad: 21 años, 10 meses
Puntos: 0
slide show

estoy haciendo una pagina de mi pueblo y tengo muchas fotografias,me gustaria hacer un "slide show" horizontal donde las imagenes fueran pasando en un tamaño pequeño y tuvieran un link para abrirlas en otra pagina en grande.si alguien me pudiera pasar un codigo javascript o una direccion donde tuviera algun ejemplo le estaria muy agradecido...gracias
jose
  #2 (permalink)  
Antiguo 28/06/2002, 22:35
Avatar de Wakkos
Colaborador
 
Fecha de Ingreso: octubre-2001
Ubicación: (cerca)
Mensajes: 1.795
Antigüedad: 22 años, 6 meses
Puntos: 59
Re: slide show

Yo hice algo que te puede servir en www.jimenezcortabitarte.com en la sección así construimos.

A ver, el script:
Código:
<SCRIPT language=JavaScript>
window.onerror = null;
window.defaultStatus ="";
function removeFocus() {
	for (i = 0; i < document.links.length; i++) {
		document.links[I].onfocus = document.links.blur;
	}
}
flag = true;
function MoveLayer(n,Xf){
if(document.images && flag == true){
flag = false;
if (document.layers){
Xs = parseInt(document.layers[n].left);
setTimeout("flag = true;",31*30);
for(I = 1; I <= 50; I++){
Xp = Xs+((Xf-Xs)*I/50); 
window.status = Xp;
setTimeout("document.layers."+n+".left = '"+Xp+"'", I*30);
}
}
else if (document.all){
Xs = parseInt(document.all[n].style.left);
setTimeout("flag = true;",31*30);
for(I = 1; I <= 60; I++){
Xp = Xs+((Xf-Xs)*I/60); 
setTimeout("document.all['"+n+"'].style.left = '"+Xp+"px'", I*15);
}
}
else if (document.getElementById &&! document.all){
Xs = parseInt(document.getElementById(n).style.left);
setTimeout("flag = true;",31*60);
for(I = 1; I <= 30; I++){
Xp = Xs+((Xf-Xs)*I/30); 

setTimeout("document.getElementById('"+n+"').style.left = '"+Xp+"px'", I*20);
}
}

flag 
}
}

// window.onload = new Function("if(document.images) myScroll();");

</SCRIPT>

  


Luego, defines tantas capas según imágenes tengas:
(no cabe, otra página -->)
  #3 (permalink)  
Antiguo 28/06/2002, 22:41
Avatar de Wakkos
Colaborador
 
Fecha de Ingreso: octubre-2001
Ubicación: (cerca)
Mensajes: 1.795
Antigüedad: 22 años, 6 meses
Puntos: 59
Re: slide show

Código:
<style type="text/css">
	

	DIV.fotograma1 { position:absolute; left:0px; width:476px; top:34px; border:0px solid #000; }
	DIV.fotograma2 { position:absolute; left:525px; width:450px; top:34px; border:0px solid #000;}
	DIV.fotograma3 { position:absolute; left:1025px; width:450px; top:34px; border:0px solid #000;}
	DIV.fotograma4 { position:absolute; left:1525px; width:450px; top:34px; border:0px solid #000;}
	DIV.fotograma5 { position:absolute; left:2025px; width:450px; top:34px; border:0px solid #000;}
	DIV.fotograma6 { position:absolute; left:2525px; width:450px; top:34px; border:0px solid #000;}
	DIV.fotograma7 { position:absolute; left:3025px; width:450px; top:34px; border:0px solid #000;}
	</style>
Claro, cada capa está definida según la distancia desde el punto cero ('0') horizontalmente y se va sumando según el ancho de la imagen más el margen que exista ebtre ellas.

Luego, yo tengo una imagen que llama a la función movelayer y que definme hasta que distancia se va a mover el layer, claro, si quieres que se mueva hacia la derecha, la medida de X será negativa.

Hagamos un ejemplo:
<A href="javascript:javascript:MoveLayer('mainNa v',-1000);"><IMG SRC="../images/flechas_01.gif" WIDTH="65" HEIGHT="18" border="0" alt=""></a>

eso va a mover la capa a la posición -1000 px a la izquierda y así puedes jugar con diferentes combinaciones.
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 19:36.