Javascript Flickr JSON提要中的随机照片
我使用这个查询解析来自flickr帐户的JSON提要,并将该提要中最近12张照片的代码注入名为#photos的div中Javascript Flickr JSON提要中的随机照片,javascript,jquery,json,Javascript,Jquery,Json,我使用这个查询解析来自flickr帐户的JSON提要,并将该提要中最近12张照片的代码注入名为#photos的div中 //设置查询所需的变量 变量URL=”http://api.flickr.com/services/feeds/photos_public.gne"; var ID=“”; var jsonFormat=“&lang=en-us&format=json&jsoncallback=?”; var ajaxURL=URL+“?id=“+id+jsonFormat; //获取fli
//设置查询所需的变量
变量URL=”http://api.flickr.com/services/feeds/photos_public.gne";
var ID=“”;
var jsonFormat=“&lang=en-us&format=json&jsoncallback=?”;
var ajaxURL=URL+“?id=“+id+jsonFormat;
//获取flickr帐户的最后照片,将其解析为HTML代码
$.getJSON(ajaxURL,函数(数据){
var htmlString='
;
//现在开始循环浏览我们的Flickr照片详细信息
$.each(data.items,function(i,item){
//我只想要易怒的方形缩略图
var sourceSquare=(item.media.m).replace(“_m.jpg”,“_s.jpg”);
//这里是我们拼凑HTML的地方
htmlString+='';
如果(i==11){
返回false;
}
});
//在#images DIV中弹出我们的HTML
$('#photos').html(htmlString);
}); // 结束getJSOON
但我需要加载12张随机照片,而不是最新的12张,我如何才能做到这一点?将它们全部转储到一个数组中,然后拼接出来。因为实际上是从原始数组中删除元素,所以您不必担心两次提取同一项
$.getJSON(ajaxURL, function(data){
var items = data.items, // array
extract = [], // array
max = 12; // number of items to remove
for (var i=0; i<max; i++) {
var rand = Math.floor(Math.random()*items.length); // a random index
extract.push(items.splice(rand,1)[0]); // splice() returns an array
};
// do something with 'extract'
});
$.getJSON(ajaxURL,函数(数据){
var items=data.items,//数组
extract=[],//数组
max=12;//要删除的项目数
对于(var i=0;我认为flicker API不支持这样的功能,您必须自己做
$.getJSON(ajaxURL, function(data){
var items = data.items, // array
extract = [], // array
max = 12; // number of items to remove
for (var i=0; i<max; i++) {
var rand = Math.floor(Math.random()*items.length); // a random index
extract.push(items.splice(rand,1)[0]); // splice() returns an array
};
// do something with 'extract'
});