bind a jquery function to fancybox .close() event

iamwhitebox picture iamwhitebox · Apr 22, 2011 · Viewed 86.8k times · Source

I would like to trigger a simple jQuery function based on a fancybox closing. it is the only fancybox on the page

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

ofcourse the above doesn't work

Answer

Chandu picture Chandu · Apr 22, 2011

*Update: * Please take a note of @mathoiland's answer, "It looks like Fancybox 2 deprecated the onClosed callback. It now uses afterClose." if you are using FancyBox 2.x

Pass the onClosed option to the fancybox function.

i.e:

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