有没有更好的方法来编码fancybox2中的ajax调用?

时间:2012-11-20 23:54:53

标签: jquery fancybox fancybox-2

如果查看代码,我会使用2个fancybox调用。我这样做的原因是因为我只想要使用ajax获取页面的一部分。该部分位于ajaxEventContent类中。

如果可能的话,我想在一个电话中这样做。谢谢。

$("#events .popUp").live('click' ,function(e){

    e.preventDefault();

    var link = $(this).attr('href');

    $.fancybox({

        'content' : '<div style="text-align:center"><img src="loading.gif" /></div>',
        'width'     : 680,
        'minWidth' : 680,
        'height'    : 'auto',
        'autoHeight' : true,
        'beforeLoad' : function(){

            $.ajax({
                url: link,
                success: function( data ) {
                    //get content with ajax
                    content = $(data).find('.ajaxEventContent');
                    $.fancybox({

                        'content': content,
                        'width': 680,
                        'height': 'auto'

                    });

                }
            });
         }
    });

});

1 个答案:

答案 0 :(得分:1)

实际上这似乎有效。除非你没有得到loading.gif部分,这很好

$("#events .modal").on('click' ,function(e){

    e.preventDefault();

    var link = $(this).attr('href');

    $.ajax({
        url: link,
        success: function( data ) {
            //get content with ajax
            content = $(data).find('.ajaxEventContent');
            $.fancybox({

                content : content,
                width       : 680,
                helpers:  {
                    overlay : {
                        locked : false
                    }
                }

            });
        }
    });

});