页面的加载顺序是什么?

时间:2017-06-23 01:35:19

标签: jquery html ajax image

我在使用ajax显示图像时注意到的一件事是图像始终是页面上显示的最后一件事,这意味着它不会在成功事件期间加载,甚至在ajax调用的完整事件中也不会加载。 / p>

所以在完成ajax调用之后......

Ajax call

仍然没有图片......

No image displayed

图片将在浏览器中的ajax调用后显示

Image displayed

当您尝试在加载图像之前计算容器的高度/宽度时,这会导致问题。在我的情况下,我试图在完整的事件中布置砖石,但显然它错误地计算了高度,因为图像尚未显示。问题已得到解决,但我想知道:

页面的加载顺序是什么?为什么即使我将它添加到ajax调用中,图像也是最后显示的东西?

更新我显示图片的方式

success: function (result) {
    if (result.success) {
        $.each(result.postsViewModel.Posts, function (index, item) {
            var post = $('<div class="postItem padding-left-right-20"><div class="ibox"><div class="ibox-content contact-box">' + '<div class="small m-b-xs">' + (item.ImageUrl != null ? '<img width="1000" alt="Post Image" class="img-responsive" src="' + item.ImageUrl + '">' : '<img width="1000" alt="Post Image" class="img-responsive" src="/Images/blog/no-image-available.jpg">');
        });

        //add item
        $(".postList").append($post);

        //add masonry item
        $grid.append($post).masonry("appended", $post);
    });
}

0 个答案:

没有答案