Hola kurlax
He estado mirando en google y he encontrado este
enlace , pero no he conseguido eliminar el evento, de todos modo lo pongo para que le heches un vistazo.
He optado por una forma menos ortodoxa, pero parece funcionar, basicamente para "eliminar" el evento, asigno new Function("return false;") al evento.
Te pongo un ejemplo para que te hagas una idea y lo puedas estudiar, si tienes alguna duda, por aquí andaré.
Código:
<html>
<head>
<title></title>
</head>
<body>
<div id="bsg" style="border:1px solid black;">Evento click activado</div><br>
<span id="on" style="border:1px solid black;">Haz click aquí para activar el evento de la capa superior</span>
<br><br>Haz click fuera de las capas para desactivar el evento
<script language=JavaScript type=text/javascript>
<!--
function display(e,obj){
alert(obj.id)
//evitamos que el evento se propague
if(e.target) e.stopPropagation()
else { e.cancelBubble = true;
}
}
function defuse_event(e){
if(e.target) e.stopPropagation()
else { e.cancelBubble = true;
}
document.getElementById("bsg").innerHTML = "Evento click desactivado";
// "Eliminamos" el evento
document.getElementById("bsg").onclick = new Function("return false;");
}
function activate(e){
if(e.target) e.stopPropagation()
else { e.cancelBubble = true;
}
document.getElementById("bsg").innerHTML = "Evento click activado";
if(window.Event){
document.getElementById("bsg").onclick = function(event){display(event,this)}
}
else{
document.getElementById("bsg").onclick = function(){display(event,this)}
}
}
if(window.Event){
document.getElementById("bsg").onclick = function(event){display(event,this)}
document.getElementById("on").onclick = function(event){activate(event)}
document.onclick = function(event){defuse_event(event)}
}
else{
document.getElementById("bsg").onclick = function(){display(event,this)}
document.getElementById("on").onclick = function(){activate(event)}
document.onclick = function(){defuse_event(event)}
}
//-->
</script>
</body>
</html>
Espero que esto te ayude a tener un día mejor que el de ayer.
Un saludo