Fancybox 2 не может отображать содержимое AJAX («Запрошенный контент не может быть загружен».) - PullRequest
0 голосов
/ 06 февраля 2012

У меня есть этот довольно простой код в $ (document) .ready listener:

        $('#contact-us-button').fancybox({
            padding: 20,
            beforeLoad: function () {
                            $("#slideshow").data('nivoslider').stop();
                        },
            afterClose: function () {
                            $("#slideshow").data('nivoslider').start();
                        }
        });

        $('.get-a-quote').fancybox({
            padding: 20,
            beforeLoad: function () {
                            $("#slideshow").data('nivoslider').stop();
                        },
            afterClose: function () {
                            $("#slideshow").data('nivoslider').start();
                        }
        });

В то время как HTML:

 <a id="contact-us-button" href="impianto/get-a-quote-form.php"></a>

[...]

 <div class="product">
<h1>Ferrari California</h1>
<a href="dettaglio.php?id=7">
<img src="images/showcase/ferrari-california-showcase.jpg" />
</a>
<a class="get-a-quote" href="impianto/get-a-quote-form.php?id=7"></a>
 </div>

Fancybox связывается правильно, но показывает это сообщение вместо моей формы. Нет конфликтов между именами классов и идентификаторами. Есть идеи? Обратите внимание, что Fancybox 1.3.4 работает корректно примерно с одним и тем же кодом (разные параметры).

Ответы [ 2 ]

3 голосов
/ 06 февраля 2012

Попробуйте добавить класс fancybox.ajax к своим ссылкам, например

<a id="contact-us-button" class="fancybox.ajax" href="impianto/get-a-quote-form.php"></a>

и

<a class="get-a-quote fancybox.ajax" href="impianto/get-a-quote-form.php?id=7"></a>
0 голосов
/ 25 мая 2012

Попробуйте использовать свойство 'type': 'iframe', если вы хотите, чтобы оно показывало содержимое другой веб-страницы внутри него, как окно на другую страницу.

Что-то подобное в вашем теге :

<script type="text/javascript">
    $(document).ready(function() {
            $(".fancybox").fancybox({
                'type'          : 'iframe'
            });
        });
</script>

Также это может быть очевидно, но если нет ... С этим конкретным javascript, включающим ссылки на классы "fancybox" в качестве всплывающих ссылок, ваша ссылка для запуска всплывающего окна будет иметь класс, соответствующий имени класса вJavaScript выше, что-то вроде:

<a href="webpage_URL_to_show_in_popup.php" class="fancybox">Link</a>
...