Javascript 在刷新页面上,工作正常,但第一次重叠

Javascript 在刷新页面上,工作正常,但第一次重叠,javascript,jquery,asp.net,jquery-masonry,Javascript,Jquery,Asp.net,Jquery Masonry,当我的页面第一次加载时与图像重叠,若我刷新页面,它就可以正常工作了。我不知道我做错了什么。我的页面链接是www.bhinderblink.com <script type="text/javascript"> $(window).load(function () { $('#container').masonry({ // options itemSelector: '.box', col

当我的页面第一次加载时与图像重叠,若我刷新页面,它就可以正常工作了。我不知道我做错了什么。我的页面链接是www.bhinderblink.com

<script type="text/javascript">
    $(window).load(function () {
        $('#container').masonry({
            // options
            itemSelector: '.box',
            columnWidth: 240,
            isAnimated: true,
             isFitWidth: true,
            animationOptions: {
                duration: 650,
                easing: 'linear',
                queue: false
            }
        });
    });   


</script>

$(窗口)。加载(函数(){
$(“#容器”)。砌体({
//选择权
itemSelector:“.box”,
列宽:240,
是的,
是的,
动画选项:{
持续时间:650,
“线性”,
队列:false
}
});
});   
一旦.ajax成功,它将从xmlobject获取数据

function OnSuccess(response) {
        var xmlDoc = $.parseXML(response.d);
        var xml = $(xmlDoc);

        pageCount = parseInt(xml.find("PageCount").eq(0).find("PageCount").text());

        var pic_infoVar = xml.find("pic_info");

        pic_infoVar.each(function () {
            var customer = $(this);
            //...........

            var $picString = $("<div class='box'><img id='theImg' src='/pic/jas/" + customer.find("pic_name").text() + ".jpg" + "'/><div>Detail2</div></div>");
            $("#container").append($picString).masonry('appended', $picString, true);

        });

        $("#imgloader").hide();
        $("body").css({ "opacity": "100" });
    }
函数成功(响应){
var xmlDoc=$.parseXML(response.d);
var xml=$(xmlDoc);
pageCount=parseInt(xml.find(“pageCount”).eq(0.find(“pageCount”).text());
var pic_infoVar=xml.find(“pic_info”);
pic_infoVar.each(函数(){
var customer=$(此值);
//...........
var$picString=$(“Detail2”);
$(“#容器”).append($picString).mashise('appended',$picString,true);
});
$(“#imgloader”).hide();
$(“body”).css({“不透明”:“100”});
}

我也有类似的问题,第一次加载时图像重叠。我克服了这个困难 首先加载图像

 $(".id").imagesLoaded(function(){
    $('.id').masonry({
                itemSelector: '.scrapcontent',
                columnWidth: 3,
                isAnimated:true,
                animationOptions: {
                    duration: 700,
                    easing:'linear',
                    queue :false
               }
         });
}

如果图像已加载,则只需开始您的任务。它应该可以正常工作。

这是因为在内容(图像)未完全加载之前脚本正在运行。因此存在定位误差

试试这个:-

<head>
<script>
      $(window).load(function(){
          $('#selector').masonry({
               itemSelector : '.item',
               columnWidth : 200,
               isAnimated: true,
               animationOptions: {
                    duration: 700,
                    easing: 'linear',
                    queue: false
               }
          });
      });
</script>
</head>

$(窗口)。加载(函数(){
$('#选择器')。砌体({
itemSelector:“.item”,
列宽:200,
是的,
动画选项:{
持续时间:700,
“线性”,
队列:false
}
});
});

我检查了你的链接,一切正常。尝试从浏览器中清除/禁用缓存20次中有2次可以正常工作。首先完全关闭页面并尝试重新打开2-3次,然后你会注意到,当你在圈上向下滚动15张图片时。但如果你刷新打开的页面,它会完美地加载图片。我不确定问题在哪里,但第一次你必须解决控制台中显示的错误:。我搜索了完整的代码,但没有与404相关的错误或断开的链接。我也试过萤火虫。