JQuery& Flickr API,没有正确获取photoset详细信息

时间:2010-07-29 08:08:09

标签: jquery api flickr

我想尝试使用Flickr API在我的网站上创建照片库,我有API& photoset,我正在使用Flickr方法'getPhotos',它返回给定Set中的照片,我使用jQuery调用它。

我的javascript似乎都工作得很好,除非正在返回Flickr照片集的细节,在构建我的src位置时,数据正在丢失......

在调试(使用Internet Explorer - F12)时,对象'data'包含预期的细节,带有photoset的参数,在该参数中我有参数'photo',在其中我有一组对象[0-每个包含参数'farm,id,secret,server&标题'都具有预期值。 然而,当我构建我的HTML var'theHtml'并用上述值填补空白时,我的HTML值被设置为'undefined'。

所以不要得到预期的: farm4.static.flickr.com/2480/1234567890_a1a1a1a1a1_b.jpg

我明白了 farmundefined.static.flickr.com/undefined/undefined_undefined_b.jpg

任何人都可以向我解释这个吗?

这是我的jQuery代码:

<script type="text/javascript">
 $(document).ready(function(){
 $.getJSON('http://api.flickr.com/services/rest/?method=flickr.photosets.getPhotos&api_key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&photoset_id=00000000000000000&format=json&jsoncallback=?', displayImages);
  function displayImages(data) {
   var theHtml = "";
   $.each(data.photoset, function(i,photo){
    var source = 'http://farm'+photo.farm+'.static.flickr.com/'+photo.server+'/'+photo.id+'_'+photo.secret+'_b.jpg';
    theHtml+= '<li><a href="'+photo.link+'" target="_blank">';
    theHtml+= '<img title="'+photo.title+'" src="'+source+'" alt="'+photo.title+'" />';
    theHtml+= '</a></li>';
   });
   $('#images').html(theHtml);
  };
 });
 </script>

<div id="images"></div>

var source并未正确构建。

提前干杯!

1 个答案:

答案 0 :(得分:2)

排序!

$.each(data.photoset, function(i,photo){ 

应该是

$.each(data.photoset.photo, function(i,photo){