2011-04-06 4 views
0

j'ai écrit un gestionnaire de clic qui crée une liaison vers le document gestionnaire de clic comme ceci:JQuery lier au document, cliquez gestionnaire sur le clic de l'objet déclenche le document gestionnaire de clic immédiatement

$("#button").bind('click',function(){ 

    .... 


    $(document).bind('click',function(){   
     console.log("document.click"); 
    }); 
}); 

Ce que je trouve étrange à ce sujet est que la Cliquez sur le gestionnaire de clics et le journal de la console s'affiche immédiatement. En d'autres termes, je reçois le journal de la console la première fois que je clique sur #button. Est-ce parce que le clic sur le document prend du temps et que je lie l'événement click du document juste avant qu'il n'arrive? Y a-t-il un moyen d'empêcher cela?

Répondre

3

essayez ceci:

$("#button").bind('click',function(e){ 
    e.stopPropagation(); 
    .... 


    $(document).bind('click',function(){   
     console.log("document.click"); 
    }); 
}); 

Cela permettra d'éviter l'événement de bouillonnement

+0

doh! Merci pour ça – Oliver

Questions connexes