привязать функцию jquery к событию fancybox .close () - PullRequest
27 голосов
/ 22 апреля 2011

Я хотел бы вызвать простую функцию jQuery, основанную на закрытии fancybox. это единственная подарочная коробка на странице

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

конечно, выше не работает

Ответы [ 4 ]

45 голосов
/ 22 апреля 2011

* Обновление: * Обратите внимание на ответ @ mathoiland: «Похоже, Fancybox 2 устарел обратным вызовом onClosed. Теперь он использует afterClose».если вы используете FancyBox 2.x

Передайте параметр onClosed в функцию fancybox.

, т. е.

$("<YOUR-SELECTOR>").fancybox({
  onClosed: function() {
    $('#sub_cont').hide(250, function() {
    $('#IDsearchform input').val('');
    });
  })
});
33 голосов
/ 27 ноября 2011

Просто заметка.Похоже, Fancybox 2 обесценил обратный вызов onClosed.Теперь он использует afterClose.

См. Новую документацию в разделе «Обратные вызовы».http://fancyapps.com/fancybox/

15 голосов
/ 27 августа 2012

В последней версии fancybox вам может потребоваться использовать afterClose вместо onClosed

так этот код ..

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

должно стать ...

$("<YOUR-SELECTOR>").fancybox({
  afterClose: function() {
    $('#sub_cont').hide(250, function() {
    $('#IDsearchform input').val('');
    });
  })
});
7 голосов
/ 22 апреля 2011
$("#myfancybox").fancybox({
    'onClosed'  : function() {
             $('#sub_cont').hide(250, function() {
                $('#IDsearchform input').val('');
             });
    }
});
...