我正在编写一个显示图像的单页javascript应用程序,一个la pinspire。我正在使用的库是jQuery(1.7.2)和最新版本的同位素。
我正在尝试在app中实现无限滚动。当您滚动到页面底部时,ajax会与服务器通信并返回JSON中的对象数组。这个JSON用于构建几个div,其中包含有关每个图像和图像本身的一些信息。
我将每个div添加到同位素启用的容器中。在我的ajax调用的完整部分中,我称之为同位素(“reLayout”)。这很好用。
我的问题是添加十几个div会导致项目“颤动”,然后我希望项目放在最后。我尝试过addItems的各种排列,插入,追加,而不是使用同位素(“reLayout”)无济于事。
如何使用ajax添加包含图像的项目,而不让它们重叠或飘动?
此致 尼克
答案 0 :(得分:6)
我不知道这是否有帮助,但这是对我所做的事情的提取:
var tmp = $();
// adding a jQuery-wrapped element to the tmp object
tmp = tmp.add( $( buildTemplate() ) );
$('#container').append(tmp);
tmp.imagesLoaded(function() {
$('#container').isotope('appended', tmp);
});
我的关键是等待图片加载,否则reLayout没有做任何事情。