2010-05-28 29 views
6

Sanırım biraz düğmesinin click olayı div (idshow) içindeki nüfus bilgileri duyuyorumjQuery gizle div

<form> 
<div> 
showing some information here 
</div> 

<div id="idshow" style="display:none"> 
information here 
</div> 

</form> 

gibi formu şey içinde bir div var. div (idshow) 'un dışına tıklandığında ne istediğimi gizlemeliyim. sadece menüyü tıklattığım gibi menü görüntülenir ve dış menüyü tıklattığımda gizlenir. seni böyle bir istediğini bunu yapabilirsiniz

cevap

11
$(document).click(function(event) { 
    var target = $(event.target); 

    // Check to see if the target is the div. 
    if (!target.is("div#idshow")) { 
    $("div#idshow").hide(); 
    // Prevent default event -- may not need this, try to see 
    return(false); 
    } 
}); 
3

her şeyi kullanarak jquery gerekir:

, click olay eğer o, document giden tüm yol boyunca kabarcıklar Burada yapılan budur tıkladığınızda ise
$(document).click(function() { 
    $("#idshow").hide(); 
}); 
$("#idshow").click(function(e) { 
    e.stopPropagation(); 
}); 

oraya gideriz <div>'u gizleriz. <div>'un içine tıkladığınızda, event.stopPropagation() kullanarak balonun document'a ulaşmasını engelleyebilirsiniz ... böylece .hide(), kısa ve basit bir şekilde patlamaz :)