保持设置订购订单Flickr API
问题描述:
我目前正在尝试设置一个小站点,它使用JavaScript和JSON从flickr中提取集合。这一切都工作正常,但网站上的照片顺序不同于Flickr上的照片顺序。我已经广泛搜索这个解决方案,但没有运气。有没有人有过这个问题?和/或知道解决方案?我当前的代码是:保持设置订购订单Flickr API
function getImages(setID) {
$.getJSON("http://api.flickr.com/services/feeds/photoset.gne?set=" + setID + "&nsid=USER_ID&lang=en-us&format=json&jsoncallback=?", displayImages);
}
function displayImages(data) {
var htmlString = "";
$.each(data.items, function(i,item){
// get large images
var nextImage = (item.media.m).replace("_m.jpg", "_b.jpg");
htmlString += '<img title="' + item.title + '" src="' + nextImage;
htmlString += '" alt="'; htmlString += item.title + '" />';
});
$('#images').html(htmlString);
}
答
经过翻翻API,我结束了使用的feeds
的rest
,而不是它带来正确的顺序。不幸的是,您不能以这种方式访问大图像,但提供了访问它们的信息,因此在循环时为每个图像创建img src
:
function getImages(setID) {
$.getJSON("http://api.flickr.com/services/rest/?method=flickr.photosets.getPhotos&api_key=yourAPIkey&photoset_id=" + setID + "&lang=en-us&format=json&jsoncallback=?", displayImages);
}
function displayImages(data) {
var htmlString = "";
$.each(data.photoset.photo, function(i,photo){
var imgSrc = 'http://farm' + photo.farm + '.static.flickr.com/' + photo.server + '/' + photo.id + '_' + photo.secret + '_b.jpg';
htmlString += '<img title="' + photo.title + '" src="' + imgSrc;
htmlString += '" alt="'; htmlString += photo.title + '" />';
});
$('#images').html(htmlString);
}