Foros del Web » Programando para Internet » Javascript »

transicion de imagenes error IE

Estas en el tema de transicion de imagenes error IE en el foro de Javascript en Foros del Web. Hola Yo como siempre con errores extraños. Hace tiempo encontré un codigo para crear una transicion entre imagenes y me funcionó perfectamente. Pero ahora ese ...
  #1 (permalink)  
Antiguo 25/03/2009, 12:45
 
Fecha de Ingreso: abril-2005
Mensajes: 75
Antigüedad: 19 años
Puntos: 2
transicion de imagenes error IE

Hola

Yo como siempre con errores extraños. Hace tiempo encontré un codigo para crear una transicion entre imagenes y me funcionó perfectamente. Pero ahora ese mismo codigo lo pongo en otra web y da fallo en explorer, en mozilla va bien.

Os pongo el codigo a ver si vosotros encontrais algo:

Código HTML:
<script type="text/javascript">

//TRANSICION LOGOS
var segundos = 6 //cada cuantos segundos cambia la imagen
var dire = "imagenes" //directorio o ruta donde están las imágenes

var imagenes=new Array()
imagenes[0]="photo1.jpg"
imagenes[1]="photo2.jpg"
imagenes[2]="459.jpg"
imagenes[3]="490.jpg"

if(dire != "" && dire.charAt(dire.length-1) != "/")
{dire = dire + "/"}

var preImagenes = new Array()
	for (pre = 0; pre < imagenes.length; pre++){
		preImagenes[pre] = new Image()
		preImagenes[pre].src = dire + imagenes[pre]
	}
cont=0
function presImagen(){
	document.foto.src= dire + imagenes[cont]
	subeOpacidad()
	if (cont < imagenes.length-1)
		{cont ++}
	else
		{cont=0}
	tiempo=window.setTimeout('bajaOpacidad()',segundos*1000)
}
var iex = navigator.appName=="Microsoft Internet Explorer" ? true : false;
var fi = iex?'filters.alpha.opacity':'style.MozOpacity'
var opa = iex ? 100 : 1;
function bajaOpacidad(){
	eval(opa)
	if(opa >= 0){
		cambia()
		opa -= iex?10:0.1;
		setTimeout('bajaOpacidad()',10)
	}
	else{presImagen()}
}

function subeOpacidad(){
	opaci = iex?100:1;
	if(opa <= opaci){
		cambia()
		opa += iex?10: 0.1;
		setTimeout('subeOpacidad()',10);
	}
}
function cambia(){
	eval('document.foto.' + fi + ' = opa')
}
var tiempo
function inicio(){
	clearTimeout(tiempo)
	bajaOpacidad()
}

</script>

<body onLoad="inicio()">
				<img src="imagenes/459.jpg" name="foto" id="foto" / > 
El fallo que me da el 'document.foto.filters.alpha' es nulo o no es un objeto
El error lo da en esta zona, es decir en la linea del ultimo corchete:
Código HTML:
function subeOpacidad(){
	opaci = iex?100:1;
	if(opa <= opaci){
		cambia()
		opa += iex?10: 0.1;
		setTimeout('subeOpacidad()',10);
	}
}
Gracias
  #2 (permalink)  
Antiguo 03/04/2009, 03:29
 
Fecha de Ingreso: abril-2005
Mensajes: 75
Antigüedad: 19 años
Puntos: 2
Respuesta: transicion de imagenes error IE

Hola, ya he encontrado el fallo (despiste mio, lo siento).

Por si a alguien le sirve la función, decirle que lo que falta es el style. Que como lo tenía en la hoja de estilo aparte no me di cuenta de que faltaba.

Código HTML:
<style type="text/css">
#foto {
	filter: alpha(opacity=100)
}
</style> 
Hasta pronto
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 11:00.