【发布时间】:2011-04-11 17:04:47
【问题描述】:
我有以下代码:
var src, flickrImages = [];
$.ajax({
type: "GET",
url: "http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=bf771e95f2c259056de5c6364c0dbb62&text=" + xmlTitle.replace(' ', '%20') + "&safe_search=1&per_page=5&format=json",
dataType: "json",
statusCode: {
404: function() {
alert('page not found');
}
},
success: function(data) {
$.each(data.photos.photo, function(i,item){
src = "http://farm"+ item.farm +".static.flickr.com/" + item.server + "/" + item.id + "_" + item.secret + "_s.jpg";
flickrImages[i] = '<img src="' + src + '">';
});
}
});
// undefined returned here for flickrImages
map.setZoom(13);
map.setCenter(new google.maps.LatLng(xmlLat,xmlLng));
infowindow.setContent('<strong>' + xmlTitle + '</strong><br>' + xmlExcerpt + '<br><br>' + flickrImages.join(''));
infowindow.open(map,this);
我正在尝试访问 ajax 外部的 flickrImages 变量,因此我可以将其放在谷歌地图的信息窗口中。不幸的是,在 ajax 之外它返回 undefined。
我尝试将 flickr 的内容移到 ajax 中,但不幸的是它会丢失一些其他信息,例如 xmlTitle 和 xmlExcerpt。
非常感谢任何帮助。
提前致谢,
戴夫。
【问题讨论】:
标签: javascript jquery ajax google-maps