我通过 JSON 获取数据
$.getJSON('http://api.flickr.com/services/rest/'
+ '?format=json&method=flickr.photosets.getPhotos'
+ '&photoset_id=' + photoset_id + '&per_page=1000'
+ '&page=1' + '&api_key=' + apiKey
+ '&user_id=' + userId + '&jsoncallback=?',
function (data) {
var fullPhotoURL, flickrLink;
var images = [];
var basePhotoURL;
var fullPhotoURL;
$.each(data.photoset.photo, function (i, flickrPhoto) {
var basePhotoURL = 'http://farm' + flickrPhoto.farm
+ '.static.flickr.com/' + flickrPhoto.server + '/'
+ flickrPhoto.id + '_' + flickrPhoto.secret + "_b.jpg";
var fullPhotoURL = 'http://farm' + flickrPhoto.farm
+ '.static.flickr.com/' + flickrPhoto.server + '/'
+ flickrPhoto.id + '_' + flickrPhoto.secret + "_b.jpg";
images.push($("<img/>").attr("src", basePhotoURL));
});
$.each(images, function (index, img) {
img.appendTo("#photographs").wrap(("<div class='item'></div>"));
});
});
我想在每个 .item div 中附加两个 a(带有 href basePhotoURL 和 fullPhotoURL)。
$(".item")
.append("<a href='" + basePhotoURL + "'.jpg' class='zoom' />");
$(".item")
.append("<a href='" + fullPhotoURL + "' class='flickr' target='_blank' />");
问题是,当我将它们放在每个函数的第二个中时,这两个 a 被附加到 #photographs (divception :-)) 中存在的每个 .item (因此,300 个项目 x 2 a 的 PER .item)。当我将这两个 a 放在每个函数的最后一个之外时,我得到一个未定义的错误。顺便说一句,不要介意 fullPhotoURL 和 basePhotoURL 变量的值;他们是不正确的。
谢谢!