【发布时间】:2014-01-07 09:23:38
【问题描述】:
我创建了一个返回一组缩略图图像的 Flickr JSON 请求。将鼠标悬停在缩略图上会显示标题。但是,我试图在单击缩略图时调用 Colorbox 模式。
颜色框模式打开,但不显示图像。我的猜测是在点击请求之前没有加载 DOM,但我不知道如何解决这个问题(如果确实没有加载 DOM 是问题)。
这是我的代码和FIDDLE
(function ($) {
$(document).ready(function () {
var url = ["https://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=a66ae3b787a9d02a3da0f2b63ac621be&tag_mode=all&text=[title]&sort=date-taken-desc&group_id=47259259@N00&extras=description%2Cdate_taken%2Ctags%2Cowner_name%2Curl_q&per_page=500&page=1"];
var src;
var a_href;
for (var i=0;i<url.length;i++)
//SEND API CALL AND RETURN RESULTS TO A FUNCTION
$.getJSON(url[i] + "&format=json&nojsoncallback=1", function (data) {
//LOOP THROUGH DATA
$.each(data.photos.photo, function (i, item) {
//LINK TO IMAGE PAGE (REQUIRED BY FLICKR TOS)
a_href = "https://www.flickr.com/photos/" + item.owner + "/" + item.id + "?width=1020&height=500&iframe=true" + "/";
//PLACE IMAGE IN IMAGES TAG AND APPEND TO IMAGES DIV
$("<img/>").attr("src", item.url_q).attr("title", item.title).attr("datetaken", item.datetaken).appendTo("#images").wrap('<a href="' + a_href + '" name="' + item.link + '" title="' + item.title + '" target="external"></a>').colorbox();
});
});
});
})(jQuery);
【问题讨论】: