使用fancybox在模态窗口中加载特定的div

2022-01-11 00:00:00 jquery jquery-plugins ajax fancybox

我正在使用fancybox 2.我已经设法通过AJAX 在fancybox 中加载内容.但它会加载整个页面,我只对特定的 div 感兴趣.在 fancybox 1 中,我们可以通过在 ajax 中添加过滤器来做到这一点.但我不确定如何在fancybox 2 中进行过滤.

I am using fancybox 2. I have manage to load content in fancybox via AJAX. But it loads the whole page and I am only interested in specific div. In fancybox 1 we could do that by adding filter in ajax. But I am not sure how to filter in fancybox 2.

如何在fancybox 2 中从AJAX 加载页面中过滤特定的div?

How to filter specific div from AJAX loaded page in fancybox 2?

    $(".fancybox").fancybox({
        maxWidth    : 800,
        maxHeight   : 600,
        fitToView   : false,
        width       : '70%',
        height      : '70%',
        autoSize    : false,
        closeClick  : false,
        openEffect  : 'none',
        closeEffect : 'none',
        type        : 'ajax',
        'ajax'      : {
            dataFilter: function(data) {
            return $(data).find('#modalArticleContainer')[0];
        }
    });

Untile ajax 它可以工作但会加载整个页面,当我添加过滤器时它会停止工作.这就是我之前在 fancybox 1 中所做的.

Untile ajax it works but loads whole page, when I add filter then it stops working. This is how I did previously in fancybox 1.

推荐答案

如果你使用的是最新的(https://github.com/fancyapps/fancyBox/zipball/master),那么有一个技巧可以加载特定元素来自 ajax 响应 -

If you are using the latest (https://github.com/fancyapps/fancyBox/zipball/master), then there is a trick to load specific element from the ajax response -

<a href="mypage.html #my_id" class="fancybox fancybox.ajax">Load ajax</a>

$(".fancybox").fancybox();

相关文章