php输出完成后,通过jqueryajax加载内容


load content via jquery ajax after php output is complete

我目前正在使用jquery ajax将数据POST到一个php文件中,该文件使用该数据来构建和输出基于jquery的库。

";链接";点击触发ajax的有:

<li class="portfolioLink" id="identity">identity</li>
<li class="portfolioLink" id="mobile">mobile</li>
<li class="portfolioLink" id="web">web</li>

jQueryajax的一个示例是:

$("#identity").click(function(){
    $.ajax({
        url: 'portfolio.php',
        type: "POST",
        data: ({data: 'portfolio/design/identityDesign/*'}),
        success: function(data){
        $("#content_middle").html(data);
        }
    });
    $("#identity").addClass('active');
    $(".portfolioLink:not(#identity)").removeClass('active')
});

(这个jquery基本上用不同的数据重复了2次:)

除了portfolio.php(图库生成器)的输出在处理输出的JavaScript时加载到#content_middle中之外,这一切都很好(所以看起来图库是在#content_mid中实时构建的)。看到它发生可能会更有意义:www.frende.me/design.php

我想做的是让画廊完全建成。

隐藏元素,添加新的html并再次显示它如何?像这样:

$("#identity").click(function(){     
    $.ajax({         
        url: 'portfolio.php',         
        type: "POST",         
        data: ({data: 'portfolio/design/identityDesign/*'}),         
        success: function(data){ 
            $("#content_middle").hide();       
            $("#content_middle").html(data);         
            $("#content_middle").show();
        }     
    });     
$("#identity").addClass('active');     
$(".portfolioLink:not(#identity)").removeClass('active') }); 

如果我理解正确,您希望在页面加载后完全显示内容。不幸的是,一旦创建DOM,就会返回页面。因此,图像将被视为已构建,但这并不意味着它们的src已被加载。

尝试使用像这样的图像预加载

希望这能有所帮助,否则如果你需要更多细节,请发表评论。