Foros del Web » Programando para Internet » Javascript »

Más problemas con IE

Estas en el tema de Más problemas con IE en el foro de Javascript en Foros del Web. Estoy haciendo un código que entre otras cosas tenga la función de que cuando paso el ratón encima de una imagen esta se cambie, tengo ...
  #1 (permalink)  
Antiguo 30/04/2007, 09:14
 
Fecha de Ingreso: abril-2006
Mensajes: 80
Antigüedad: 18 años, 1 mes
Puntos: 2
Más problemas con IE

Estoy haciendo un código que entre otras cosas tenga la función de que cuando paso el ratón encima de una imagen esta se cambie, tengo estas funciones entre otras:

Código:
function añadirEvento(objeto, tipo_evento, funcion, capturar)
{
	if (objeto)
	{
		if (objeto.attachEvent)
		{
			var r= objeto.attachEvent("on"+tipo_evento, funcion);
			return r;
		}
		else if (objeto.addEventListener)
		{
			objeto.addEventListener(tipo_evento, funcion, capturar);
			return true;
		}
		else {return false;}
	}
}

function seleccionar(id)
{
	extension= document.getElementById(id).src.indexOf('png');
	archivo= document.getElementById(id).src.substring(0,extension-1); //Error en IE: Se requiere un objeto
	document.getElementById(id).src= archivo+'2.png';
}
function deseleccionar(id)
{
	extension= document.getElementById(id).src.indexOf('png');
	archivo= document.getElementById(id).src.substring(0,extension-2); //Error en IE: Se requiere un objeto
	document.getElementById(id).src= archivo+'.png';
}

var imgid= new Array('negrita', 'cursiva', 'subrayado', 'tachado', 'izquierda', 'justificado', 'olist', 'ulist', 'color', 'emoticonos');
	for (i=0; i<imgid.length; i++)
	{
		añadirEvento(document.getElementById(imgid[i]), 'mouseover', function(){seleccionar(this.id);});
		añadirEvento(document.getElementById(imgid[i]), 'mouseout', function(){deseleccionar(this.id);});
	}
Funciona en Firefox pero en IE me da error. He comprobado que lo que ocurre es que no reconoce el parámetro this.id, pero porque y cuál puede ser la solución para que funcione en IE?
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 09:45.