2017-08-29 1 views
-4

Wie entferne ich diesen EventListener in JS?Wie entferne ich diesen EventListener in JS?

Mein Versuch - nicht funktioniert

document.addEventListener("mouseleave", function(e){ 
     if(e.clientY < 0) { 
      $('.intent-exit-popup').show("slow"); 
     }; 

     document.removeEventListener("click", function(){ 
     $(".close-popup").click(function() { 
      $('.intent-exit-popup').hide("slow"); 
     }) 
     }, true); 

}, true); 
+5

https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/removeEventListener –

+1

Dies ist Code für diese schrecklichen Pop-ups, die überall im Internet erscheinen, wenn Sie von einer Seite weggehen .. Wirklich sucky UI-Design. – Steve

Antwort

0

Sie können auf diese Weise tun:

var mouseLeaveFired = false; 
if (!mouseLeaveFired) { 
    console.log('mouseLeave') 
    document.addEventListener("mouseleave", function(e){ 
     mouseLeaveFired = true; 
     e.target.removeEventListener('mouseleave', false) 
    }); 
} 
+0

Ich weiß nicht, was mache ich falsch, aber es scheint nicht zu funktionieren Ihre Lösung –

+0

In Ihrem Code nach dem Entfernen des Listeners Sie hier einen neuen Listener erstellt: document.addEventListener ("mouseleave"), so sollten Sie überprüfen, ob es erstellt wurde Es sollte keinen neuen Listener erstellen. –

Verwandte Themen