Несколько FancyBox не закрываются даже после вызова метода close

0

Я использую несколько экземпляров jQuery FancyBox на одной странице. После звонка

jquery.fancybox.close()

он не закрывает его вообще

Скрипт, создающий FancyBox, приведенный ниже:

<script>
                    $("#firstTimeIntro").fancybox(
                        {
                        maxWidth    : "30%",
                        maxHeight   : "50%",
                        fitToView   : false,
                        width       : '70%',
                        height      : '70%',
                        autoSize    : false,
                        closeClick  : false,
                        openEffect  : 'none',
                        closeEffect : 'none'
                        }
                    ).trigger('click');
                     $.fancybox.update();
                </script>

Вот как я закрываю fancybox:

$("#notRightnow").click(function(e) 
    {
      //$.cookie('navafiz_notrightnow', '1', { expires: 30, path: '/' });
       $.fancybox.close();
    }); 

Чтобы протестировать в реальной среде, посетите здесь.

На странице Загрузка отобразит всплывающее окно, чтобы попросить вас войти в систему. Когда вы нажмете ссылку " Не сейчас", она должна закрыть popUp, но это не так.

  • 0
    Не просите людей входить на ваш сайт, а публикуйте свой полный код вместо включенного html.
  • 0
    Код обновлен. Пожалуйста, смотрите сейчас
Теги:
google-chrome
fancybox

1 ответ

0

Как-то я разобрался. Лучший способ справиться с несколькими fancyboxes - объявить класс, forinstance fancybox к ссылке, которая будет загружать всплывающее окно и запускать щелчок. Код приведен ниже:

HTML

  <div style="display:none;"  id="firstTimeIntro">
            Loading First Time Intro
            <a id="closeme" href="#">Close Me</a>
        </div>
        <a class="fancybox" href="#firstTimeIntro" id="hiddenIntroBox" style="display: block">Hidden</a>
        <div style="display:none;"  id="firstTimeIntro1">
            Loading First Time Intro 2nd time
            <a id="closeme1" href="#">Close Me</a>
        </div>
        <a class="fancybox" href="#firstTimeIntro1" id="hiddenIntroBox1" style="display: block">Hidden</a>

JavaScript

$(document).ready(function()
{
    $('.fancybox').fancybox({
                maxWidth    : "70%",
        maxHeight   : "70%",
        fitToView   : false,
        width       : '70%',
        height      : '70%',
        autoSize    : false,
        closeClick  : false,
        openEffect  : 'none',
        closeEffect : 'none'
    });
    $.fancybox.update();
    //$("#hiddenIntroBox").trigger('click');
    $("#hiddenIntroBox1").trigger('click');
    $("#closeme").click(function(e) 
    {
      //$.cookie('navafiz_notrightnow', '1', { expires: 30, path: '/' });
       $.fancybox.close();
    });
    $("#closeme1").click(function(e) 
    {
      //$.cookie('navafiz_notrightnow', '1', { expires: 30, path: '/' });
       $.fancybox.close();
    });
}
);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню