alvaro-prieto
4/27/2017 - 10:39 AM

Enviar y capturar Eventos desde JS Javascript. preventDefault prevenir prevenibles prevent dispara

Enviar y capturar Eventos desde JS Javascript. preventDefault prevenir prevenibles prevent dispara

	
	//DISPARAR / LANZAR EVENTO para que lo capture el padre
	this.quontrol.dispara("miEvento");  
	
	
	
	//normalmente en el inicio guardamos una referencia a this.quontrol para acceder más fácil
	"inicia":function()
	{
		var quontrol = this.quontrol; 
		//...
	
	
	
	//para capturar un evento
	this.quontrol.on("modificado",".Quontrol_insertaTags",function(){ 
		  console.log("capturado evento modificado")})
	}
	
	//Alternativamente, si no queremos poner el callback inline, se puede hacer
	//algo del tipo 
	"inicia":function()
	{
		var quontrol = this.quontrol; 
		//evento lanzado por quontrol hijo
	  this.quontrol.on("modificado",".Quontrol_insertaTags",onModificado); 
	  
	  //también podría ser un evento nativo js, de manera similar:
	  quontrol.on("click", ".selectorElementoHijoDelActual", onCallbackFicticio);
	},
	"onModificado":function(){
	    console.log("capturado evento modificado desde una función no inline")})
	}
	
	
	/*
	Los eventos, en lo posible, tienen que ser prevenibles. Al lanzarlos capturamos 
	el valor, y al capturarlos podemos hacer un preventDefault
	
	*/
	
	//en el disparo
var ev=this.quontrol.dispara("modificado"); 

//también puedes enviar datos: this.quontrol.dispara("modificado", datos); 

if (ev.isDefaultPrevented())
{
    return;
}


//en la captura
e.preventDefault();