привязать функцию jquery к событию fancybox .close()

#jquery #function #fancybox #bind

#jquery #функция #fancybox #привязать

Вопрос:

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

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

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

Комментарии:

1. как насчет того, чтобы инициализировать fancybox с помощью опции OnClosed?

Ответ №1:

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

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

то есть:

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

Комментарии:

1. спасибо, у меня все работает нормально 🙂 но вам нужно добавить одинарные кавычки, подобные этому ‘OnClosed’

2. onClosed устаревший, пожалуйста, используйте afterClose

3. @Ajmal Тебя волновало, что ты прочитал сообщение, где я упомянул, что предложенное мной решение (которое было действительным на момент моего ответа на вопрос) теперь устарело, и проверить ответ мэтьюланда? Не уверен, почему вы все еще думали, что ответ будет отклонен .. не то чтобы меня это волновало…

Ответ №2:

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

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

Ответ №3:

В последней версии 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('');
    });
  })
});
  

Ответ №4:

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