我很困惑为什么我会收到重复的图像。
这是我在 jsfiddle 上的代码:
我在想也许这是一个async
问题,在搜索之前接收新的分页但是,我能做些什么来改变它?
谢谢你
艾登
我很困惑为什么我会收到重复的图像。
这是我在 jsfiddle 上的代码:
我在想也许这是一个async
问题,在搜索之前接收新的分页但是,我能做些什么来改变它?
谢谢你
艾登
问题是第二个$.ajax()
电话是在第一个电话结束之前进行的。
您需要做的是设置这样的功能:
var n = 0, pages = 2;
function displayImgs(url) {
$.ajax({
type: "GET",
dataType: "jsonp",
cache: false,
url: url,
success: function(data)
{
alert(data.pagination.next_url);
for(var i=0;i<data.data.length; i++)
{
$("#gallery").append('<img src="'+data.data[i].images.low_resolution.url+'" height="50" width="50">');
}
n++
if(n<pages) displayImgs(data.pagination.next_url);
}
});
}
wheren
仅用于检查您调用该函数的次数,并且pages
是您要“加载/显示”的页数。
然后,您只需使用您拥有的 url 调用一次此函数,如下所示:
displayImgs(url);
你应该得到你想要的。
这是一个演示。
一方面
url = data.pagination.next_url;
不在您的“成功”范围内。