2011-11-16 6 views
10

एक बहुत ही सरल jQuery मोडल में, मैं के रूप मेंमोडल विंडो के बाहर क्लिक करके एक मोडल को कैसे बंद करें?

$('#close').click(function(e) { 
    e.preventDefault(); 
    $('#overlay, #alertModalOuter').fadeOut(400, function() { 
    $(this).remove(); 
    }); 
}); 

बंद पर क्लिक करके मोडल बंद मैं कैसे (जो मोडल खिड़कियों के अंदर है) बंद बटन पर कि क्या क्लिक करने या बाहर कहीं भी क्लिक करके मोडल बंद कर सकते हैं मोडल खिड़की

+2

बाँध '# overlay' तत्व पर ही। –

उत्तर

9

की तरह तो काम करना चाहिए अपने कार्य में बदलना:

$('#close, #overlay').click(function(e) { 
     e.preventDefault(); 
     $('#overlay, #alertModalOuter').fadeOut(400, function() { 
     $('#close').remove(); 
    }); 
}); 
+0

धन्यवाद, यह पूरी तरह से काम करता है; हालांकि एक अल्पविराम गायब है :) – Googlebot

+1

आपने गलती की है "#close #overlay" का अर्थ id #close के साथ तत्व है जिसके बाद id #overflow वाला तत्व है, आपका मतलब है "#close, #overlay" –

+0

धन्यवाद, मैंने वास्तव में किया था। अब अपडेट किया गया! –

3

अपने ओवरले पर एक ही क्लिक श्रोता जोड़ें।

5

मैं इसे उपयोगी पाए गए:

$('.item-modal').click(function(e) { 
    e.stopPropagation(); 
});