Как открыть новое всплывающее окно, когда пользователь закрывает окно модели fancybox? - PullRequest
0 голосов
/ 24 сентября 2018

Я хочу отобразить окно модели (необычное окно), и когда пользователь нажимает кнопку закрытия или клавишу ESC, должно отображаться новое всплывающее окно.Я понял, что закрытый триггер можно использовать, но не смог его реализовать.(Я новичок в кодировании)

$.fancybox.showLoading();  // show loading
            setTimeout(function(){ // then show popup, deley in .5 second
                $.fancybox({'onClosed' : function() { window.open("https://www.google.com"); }});
            }, 500); // .5 second   
        }, seconds_pop); 
    }

Ответы [ 2 ]

0 голосов
/ 24 сентября 2018

Похоже, вы используете v2, но вы можете свободно перейти на v3 и использовать что-то вроде этого:

$('[data-fancybox="gallery"]').fancybox({
  beforeClose: function(instance, current) {
    current.opts.animationEffect = false;

    $.fancybox.open({
      type : 'html',
      src : '<div>Hello!</div>',
      animationEffect : false,
      beforeClose : function(instance, current) {
        current.opts.animationEffect = "fade";
      }
    });
  }
});

https://codepen.io/anon/pen/NLVqPK?editors=1010

Вы можете выбрать beforeClose илиafterClose обратный вызов и переключение эффектов анимации для плавного изменения содержимого или нет.

0 голосов
/ 24 сентября 2018

Согласно документации на fancybox3, вы должны реализовать ее с помощью:

afterClose: function(){
    window.open("https://www.google.com");
}

Ссылку вы можете найти здесь: Опции fancybox

посмотрите эту строку afterClose: $.noop, // After instance has been closed

Вот мой пример codePen .

Не забудьте разрешить всплывающее окно в верхнем правом углу после закрытия окна изображения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...