Запустите FancyBox при загрузке страницы, не нажимая - PullRequest
1 голос
/ 08 декабря 2011

Я хочу отобразить модальное окно, используя fancybox при загрузке веб-страницы. В этом окне отобразится веб-страница, которая позволит выбрать нужный язык. Страница, отображаемая во всплывающем окне, будет веб-страницей (index_popup.php), расположенной в той же папке, что и домашняя страница (index.php).

Ответы [ 7 ]

11 голосов
/ 23 февраля 2013
window.jQuery(document).ready(function() {
    $.fancybox.open('#popup_box');
});
4 голосов
/ 11 декабря 2013

Для fancybox 2: документация предлагает следующий пример: http://jsfiddle.net/STgGM/,, к которому я добавил готовый документ:

jQuery(document).ready(function($) {
    $.fancybox.open([
        {
            href : 'http://fancyapps.com/fancybox/demo/1_b.jpg',
            title : '1st title'
        },
        {
            href : 'http://fancyapps.com/fancybox/demo/2_b.jpg',
            title : '2nd title'
        }    
    ], {
        padding : 0   
    });
});
2 голосов
/ 18 ноября 2015

См. Всплывающее окно Fancybox один раз для сеанса

<script type="text/javascript" src="/js/jquery/jquery.cookie.js"></script>
<script type="text/javascript">

(function($) {

    function openFancybox() {
        // launches fancybox after half second when called
        setTimeout(function () {
                $.fancybox.open(
                    [
                        {
                            href : 'http://fancyapps.com/fancybox/demo/1_b.jpg',
                        }    
                    ]
                );
        }, 1500);
    };

    var visited = $.cookie('visited'); // create the cookie
    if (visited == 'yes') {
        return false; // second page load, cookie is active so do nothing
    } else {
        openFancybox(); // first page load, launch fancybox
    };
    // assign cookie's value and expiration time
    $.cookie('visited', 'yes', {
        expires: 1 // the number of days the cookie will be effective
    });

})(jQuery);
</script>
2 голосов
/ 20 апреля 2015
$(document).ready(function() {
    $('#popup_box').fancybox().trigger('click'); 
});

источник

1 голос
/ 23 августа 2018

Я попробовал первое решение:

window.jQuery(document).ready(function() {
    $.fancybox.open('#popup_box');
});

Но я не смог заставить его загружаться правильно, поэтому я добавил переменную, а затем передал ее. Она работает точно так, как мне было нужно,Имеет ползунок теперь вместо загрузки каждого изображения отдельно.

Это было мое изменение:

window.jQuery(document).ready(function() {
    var box = $('#popup_box');
    $.fancybox.open(box);
});
1 голос
/ 08 декабря 2011

Хотя FancyBox не поддерживает способ автоматического запуска, было несколько обходных путей, которые кажутся довольно успешными.Один известный метод, который я использовал, находится в ссылке ниже на похожий вопрос.Это должно выполнить onPageLoad:

Как запустить jQuery Fancybox при загрузке страницы?

0 голосов
/ 15 марта 2014
 <head>   
<script type="text/javascript">

    function autoClick() { 
    document.getElementById('onload').click();
    } 

    </script>
</head>

<body onLoad="autoClick();">

<a class="fancybox-media" id="onload" href="https://www.youtube.com/watch?v=MWydLB0nFew"></a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...