Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 推迟显示图像,直到通过ajax完全加载html结果_Php_Jquery_Ajax - Fatal编程技术网

Php 推迟显示图像,直到通过ajax完全加载html结果

Php 推迟显示图像,直到通过ajax完全加载html结果,php,jquery,ajax,Php,Jquery,Ajax,我知道有人问了很多关于这个问题的问题,但我仍然不想回避这个问题。 我有很多图片,当点击时,我会通过ajax获得大图片。ajax的结果是一堆html进入我选择的div。原因是我计划在ajax返回的页面上使用其他信息。 返回的html包含img标记,我希望在图像完全加载之前不要显示它。 以下是我到目前为止的情况: function getimage(sent_data){ $("#gallery").hide() $.ajax({ type: "GET", u

我知道有人问了很多关于这个问题的问题,但我仍然不想回避这个问题。 我有很多图片,当点击时,我会通过ajax获得大图片。ajax的结果是一堆html进入我选择的div。原因是我计划在ajax返回的页面上使用其他信息。 返回的html包含img标记,我希望在图像完全加载之前不要显示它。 以下是我到目前为止的情况:

function getimage(sent_data){
$("#gallery").hide()
    $.ajax({
        type: "GET",
        url: "gallery/name.php?",
        data: "id=" + sent_data,
        success: callback
    });
}
function callback(data, status){
         $("#gallery").html('').hide(); // you need to remove the old image
        $("#gallery").removeClass("loading").html(data).fadeIn("slow");
}
返回的数据为:

<a href="test.jpg" class = "cloud-zoom" rel="position: 'inside' , showTitle: false, adjustX:-4, adjustY:-4">
    <img src="test.jpg" width="450" height="301" alt="johnboy"/></a>


谢谢。

我还没试过,但这个应该可以用

当您从服务器获取html数据时,请放置返回的html但不显示,然后将加载处理程序添加到gallery元素中,并在加载时显示html

$("#gallery").load(function(e) {
    $(this).show();
});

function callback(data, status){
     //edit: you must place your returned data
     $("#gallery").html(data).hide(); // you need to remove the old image
}

谢谢你的回复。我已经添加了代码,但“图库”根本没有更新。Ajax仍然返回html,但没有将其放在div中。我还需要line.html(数据)吗@jsonxYes,您必须放置返回的数据。我已经编辑了代码。