1

コードを見ると、2 つの fancybox 呼び出しを使用しています。これを行う理由は、ajax を使用して取得したページの一部だけが必要だからです。その部分は ajaxEventContent クラス内にあります。

可能であれば、これを 1 回の呼び出しで実行したいと考えています。ありがとうございました。

$("#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'

                    });

                }
            });
         }
    });

});
4

1 に答える 1

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
                    }
                }

            });
        }
    });

});
于 2012-11-21T14:46:04.623 に答える