$ .fancybox.close () не работает - PullRequest
2 голосов
/ 04 марта 2011

Я знаю, что этот вопрос обсуждался много раз, но я попробовал все предложения, и никто не работал. Я использую fancybox с атрибутом href, где содержимое загружается с использованием ajax.

$('a').fancybox(
        {
            href:'ajax/test.php',
            titleShow:false
        }); 

И по содержанию у меня была пользовательская кнопка закрытия

<a href="javascript:void(1)" title="close" onclick="$.fancybox.close()">Pirkti prekes</a>

И когда я нажимаю, я получаю $ .fancybox не определено.

Ответы [ 5 ]

2 голосов
/ 27 июля 2012

иногда у меня такая же проблема, и использую:

parent.$('body').fancybox.close();

или

$('body').fancybox.close();

или

 $.fancybox.close();
2 голосов
/ 04 марта 2011

Вместо того, чтобы делать клик, он должен выглядеть как

$('a').click(function(){
 $(this).fancybox.close();
});
2 голосов
/ 18 мая 2011

Я думаю, что ваша проблема в том, что вы загружаете контент ajax в iframe?

Попробуйте

<a href="javascript:;" onclick="parent.$.fn.fancybox.close();">Close</a>

Кроме того, следующее работает и для меня, когда используется тот же селектор, который использовался для инициализации fancybox в моем скрипте заголовка страницы.

<a href="javascript:;" onclick="$('a.myclass').fancybox.close();">Close</a>

Где a.myclass использовался в качестве селектора для fancybox следующим образом

$("a.myclass").fancybox({
  'frameWidth':  920,
  'frameHeight':  705 //with whatever other attributes you want to define
});

РЕДАКТИРОВАТЬ: см. Fancybox Google Group http://groups.google.com/group/fancybox/browse_thread/thread/a6eaf87875b93829

2 голосов
/ 04 марта 2011

Я не уверен насчет fancybox, но ваш атрибут href должен быть просто '#' с 'return false' в конце вашего обработчика onclick.

0 голосов
/ 10 ноября 2016

Я использую код ниже.Работает вообще

$('.fancybox-close').click();
...