Ver Mensaje Individual
  #4 (permalink)  
Antiguo 04/03/2008, 10:10
Avatar de mariamm_
mariamm_
 
Fecha de Ingreso: enero-2005
Mensajes: 124
Antigüedad: 20 años, 2 meses
Puntos: 1
Re: Marquesina continua ayuda.

He adaptado el script, introduciendo las imágenes en un array y aplicando el script de tunait, pero debo estar haciendo algo mal, tunait si ves algo raro y no te hace mucha molestia ... :-|

Un saludo!

Código:
<!---*****************************************************************************
Carousel de imágenes (marquesina horizontal). Script creado por Tunait! (18/8/2003) modificado el 25/12/2003.
Si quieres usar este script en tu sitio eres libre de hacerlo con la condición de que permanezcan intactas estas líneas, osea, los créditos.
No autorizo a publicar y ofrecer el código en sitios de script sin previa autorización
Si quieres publicarlo, por favor, contacta conmigo.
http://javascript.tunait.com/
[email protected] 
******************************************************************************--->
<script language="JavaScript" type="text/JavaScript">
	var ancho = 700 // especifica la anchura a mostrar
	var alto = 80 // especifica la altura a mostrar (alto de las imágenes)
	var velo = 10 // velocidad 
	var dis = 2 //cantidad de pixels que desplaza por movimiento
	
	var cont = 0
	var imagenes = new Array()
	
	<cfif isDefined("selgal")>
		<cfoutput query="selgal">
		<cfif selgal.foto neq "">
			imagenes[cont] = new Image()
			imagenes[cont].src = "colecciones/galeria/#selgal.foto#";
			cont=cont+1;
		<cfelse>
			imagenes[cont] = new Image()
			imagenes[cont].src = "img/blank1.gif"
			cont=cont+1;
		</cfif>
		</td>
		</cfoutput>
		<cfif selgal.recordcount LT 7>
		<cfoutput>
			<cfloop index="indice" from="1" to="#7-selgal.recordcount#" step="1">
				imagenes[cont] = new Image()
				imagenes[cont].src = "img/blank1.gif"
				cont=cont+1;
			</cfloop>
		</cfoutput>
		</cfif>
	</cfif>
	
var vel = velo
pasos = 4
var tot = 0
var tam =0;
var pos,pos2,tam2 =0;

function escribe(){
document.write ('<div id ="fuera" style="position:relative; width:' + ancho + 'px; height:' + alto + 'px;overflow:hidden">');
document.write ('<span id="imas" style="position:absolute; width:' + tam + 'px;height:' + alto + 'px; left = -' + tam + 'px;"  onmouseover="if(detienee == 0){detienee = 1}" onmouseout="clearTimeout(tiempo);detienee=0;atras = false;vel=velo;mueve()">');
for (m=0;m<imagenes.length;m++){
	if(imagenes[m].a != ""){
		document.write('<a href="' + imagenes[m].a + '" target="' + imagenes[m].target + '">')
		}
	document.write ('<img border="0"  src ="' + imagenes[m].src + '" id="ima' + m + '" name="ima' + m + '"  onload="tot++;">');
	if(imagenes[m].a != ""){document.write ('</a>')}
	}
document.write ('</span>');
document.write ('<span id="imas2" style="position:absolute; width:' + tam + 'px;height:' + alto + ';left=0;"  onmouseover="if(detienee == 0){detienee = 1}" onmouseout="clearTimeout(tiempo);detienee=0;atras = false;vel=velo;mueve()">');
for (m=0;m<imagenes.length;m++){
	if(imagenes[m].a != ""){
		document.write('<a href="' + imagenes[m].a + '" target="' + imagenes[m].target + '">')
		}
	document.write ('<img border="0" src ="' + imagenes[m].src + '" id="imaa' + m + '" name="imaa' + m + '" onload="tot++;">');
	if(imagenes[m].a != ""){document.write ('</a>')}
	}
document.write ('</span>');
document.write ('</div>');
}
var detienee = 0,posb,pos2b;
function mueve(){
pos = document.getElementById('imas').style.left;
pos2 = document.getElementById('imas2').style.left;
pos = pos.replace(/px/,"");
pos = pos.replace(/pt/,"");
pos = new Number(pos);
pos2 = pos2.replace(/px/,"");
pos2 = pos2.replace(/pt/,"");
pos2 = new Number(pos2);
if(detienee == 1){
	posb = pos;
	pos2b = pos2;
	}
if(atras == true){
pos-=dis;
pos2 -=dis;
}
else{
pos += dis;
pos2 += dis;
}
if(pos2 > (ancho + dis)){
	if(detienee == 0){
		document.getElementById('imas2').style.left = pos  - (tam + dis);
		pos2 = document.getElementById('imas2').style.left;
		}
	else{
		document.getElementById('imas').style.left = pos 
		}
	}
else{
	document.getElementById('imas').style.left = pos 
	}

if(pos > (ancho + dis)){
	if(detienee == 0){
		document.getElementById('imas').style.left = pos2 - (tam + dis);
		pos = document.getElementById('imas').style.left;
		}
	else{
		document.getElementById('imas2').style.left = pos2;
		}
	}
else{
	document.getElementById('imas2').style.left = pos2
	}
if(detienee > 0){
	if(detienee == pasos){
		vel = velo;
		atras = true;
		detienee--;
		tiempo = setTimeout('mueve()',vel);
		}
	else{
		if(atras == true){
			if(detienee>(pasos/2))
				{detienee--}
			else{
			vel = velo;
			clearTimeout(tiempo)
			}
			}
	else{
		detienee++
		}
	if(detienee > (pasos/2) && atras == false){vel +=10}
		if(detienee < (pasos/2)){vel +=10}
		tiempo = setTimeout('mueve()',vel)
		}
	}
else{
tiempo = setTimeout('mueve()',vel)
	}
if(atras == true){
		if (pos == posb){
			clearTimeout(tiempo);
			atras = false;
			}
		}
}
var tiempo;
var atras = false, ini;
function inicio(){
if(tot == (imagenes.length * 2)){clearTimeout(ini);reDimCapas();mueve()}
else{ini=setTimeout('inicio()',500)}
}
function reDimCapas(){
for(m=0;m<imagenes.length;m++){
	tam +=document.getElementById('ima'+m).width
	document.getElementById('imas').style.left = (-tam +10);
	document.getElementById('imas').style.width = tam ;
	document.getElementById('imas2').style.width = tam;
	}
}

</script>

<body onload="inicio();" >
<table width="51%" border="0" align="center">
  <tr>
    <td align="center">
<script>escribe();</script>
    </td>
  </tr>
</table>
</body>
Decir que este código está en un archivo llamado galeria.cfm, el cual está incluido en el principal (default.cfm) por si tuviera algo que ver ....

Un saludo.