Ver Mensaje Individual
  #2 (permalink)  
Antiguo 18/09/2013, 08:14
Avatar de zerokilled
zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: AddEventListener + Objetos = Toda La noche en Vela sin Solución a la Vista

buenas...

el problema que tienes no es de alcance —scope— de variables. sino que estás creando variables globales que se sobreescriben cada vez que invocas el método del objeto. mi recomendación es que siempre trabajes con variables locales, a no ser que realmente necesites una variable global. utilizando variables locales te evitas posibles fallos como el presente.

Código:
function prototype(id){	
    this.ID = id;
    this.CrearDiv = function CrearDivs(){
        var ID = this.ID;
        var Capa = document.getElementById('espacioPrueva');
        var DivPrueva = document.createElement('div');
        DivPrueva.style.width = 200+'px';
        DivPrueva.style.height = 200+'px';
        DivPrueva.style.margin = '10px 10px';
        DivPrueva.style.background = 'hsla(120,100%,50%,1)';
        Capa.appendChild(DivPrueva);
      
		DivPrueva.addEventListener("mouseover", function (){
        document.getElementById('log').innerHTML ='ObjetoPrueva ' +ID;
        }, false);
	
	}
	
}
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.