2014-09-03 68 views
0

我有一个函数来加载和放置图像到一个空的div(它是我完成的某种滚动菜单),并将图像放在另一个之后我使用append函数。一切进展顺利,直到上传到服务器。图片的顺序似乎失败,就像append()不会将它们放在另一个之后一样。追加jQuery的问题

loadContent = function(i){ 
    var tytul = "#phot" + i; 
    var photurl = "../photos/" + activegal + "/" + i + ".JPG"; 
    $.ajax({ 
     url:photurl, 
     type:'HEAD', 
     error: function() 
     { 

     }, 
     success: function() 
     { 
      newid = "photo"+i; 
      var img = $("<img />").attr({ 

       src: photurl, 
       width:"120", 
       height:"90", 
       id: newid, 
       'class': "photon" 
      }); 
      $(img).appendTo("#scrollbar"); 
      counter++; 
      //$.delay(2); 
     }); 
}; 

<div id="scrollbar"> 
     </div> 
+0

*“直到上传到服务器” *?在哪里上传到服务器的代码..? – 2014-09-03 16:16:51

+0

我通过FTP上传文件 – 2014-09-03 16:19:08

回答

0

似乎您试图通过一个循环计数器做在Ajax调用图像的获取,然后将这些图像元素添加到<div>元素,但AJAX调用是异步的,图像的appendTo()根据每个ajax调用何时返回(依次取决于图像大小,网络流量等),图像#2的appendTo之后可能会调用#1。

,确保元素的唯一方法是在服务器检查的顺序是通过使Ajax调用通过设置同步:

异步:假

+0

我在哪里放? – 2014-09-03 16:35:26

+0

行,行!上帝保佑你! – 2014-09-03 16:39:32