2011-04-22 22 views
27

Bir filigranın kapanmasına dayalı basit bir jQuery işlevini tetiklemek istiyorum. Çalışmazsa sayfa üzerinde tabiiBir jquery işlevini filigran kutusuna sürükleyin .close() olay

$.fn.fancybox.close = function() { 
    $('#sub_cont').hide(250, function() { 
    $('#IDsearchform input').val(''); 
    }); 
}); 

tek fancybox olan

+0

OnClosed seçeneğini kullanarak fantezi kutusunu ne zaman başlattığınıza ne dersiniz? – Matt

cevap

44

* Güncelleme: Fancybox 2 kaldırılmış gibi * @ mathoiland en cevabın not alınız, "görünüyor onClosed callback. Şimdi afterClose kullanır. " Eğer FancyBox 2.x kullanıyorsanız

OnClosed seçeneğini fancybox işlevine iletin.

yani:

$("<YOUR-SELECTOR>").fancybox({ 
    onClosed: function() { 
    $('#sub_cont').hide(250, function() { 
    $('#IDsearchform input').val(''); 
    }); 
    }) 
}); 
+1

Teşekkürler benim için iyi çalışıyor :-) ama bu 'onClosed' – Peeyush

+5

Tek tırnak gerekli gibi tek tırnak eklemeniz gerekir. –

+8

'onClosed' amortismana tabi tutulduktan sonra lütfen 'afterClose' kullanın –

7
$("#myfancybox").fancybox({ 
    'onClosed' : function() { 
      $('#sub_cont').hide(250, function() { 
       $('#IDsearchform input').val(''); 
      }); 
    } 
}); 
15

FancyBox son sürümünde kullanmak gerekebilir 'afterClose' öylesine

bu kod 'onClosed' yerine ..

$("<YOUR-SELECTOR>").fancybox({ 
    onClosed: function() { 
    $('#sub_cont').hide(250, function() { 
    $('#IDsearchform input').val(''); 
    }); 
    }) 
}); 

haline gelmelidir ...

$("<YOUR-SELECTOR>").fancybox({ 
    afterClose: function() { 
    $('#sub_cont').hide(250, function() { 
    $('#IDsearchform input').val(''); 
    }); 
    }) 
});