2012-01-18 11 views
1

は、私は私のページにFlickrのフォトセットから画像を引っ張って、このスクリプトを使用しています:Jonathan SmoothDivScrollがFlickr JSON APIで動作しない - 読み込み中の問題?

jQuery(document).ready(function($) { 
var apiKey = 'I put my API key here'; 
var setID = 'I put the set ID here'; 
var userID = 'I put the user ID here'; 

$.getJSON('http://api.flickr.com/services/rest/?&method=flickr.photosets.getPhotos&photoset_id=' + setID + '&api_key=' + apiKey + '&user_id=' + userID + '&extras=description&format=json&jsoncallback=?', function(data){ 
    $.each(data.photoset.photo, function(i,item){ 
     var slideimg = '<img src="http://farm' + item.farm + '.static.flickr.com/' + item.server + '/' + item.id + '_' + item.secret + '.jpg" height="200" />'; 
     var newthumb = $(".scrollableArea").append(slideimg); 
    }); 

    $("div#makeMeScrollable").smoothDivScroll({ 
     autoScroll: "always" , 
     autoScrollDirection: "endlessloopleft", 
     autoScrollStep: 1, 
     autoScrollInterval: 15, 
     visibleHotSpots: "" 
    }); 
}); 
}) 

上記のスクリプトの作品(それは私のページの頭の中で呼び出されたJSファイルと呼ばれるflickr2slideshow.jsです)画像をページの.scrollableArea divに読み込みます。

問題は、これらの写真をjQueryプラグインスクリプトSmoothDivScrollを使用するスライドショーに表示することです。 SmoothDivScrollは、ページにハードコードされたイメージで使用すると問題なく動作します。ただし、flickr4slideshow.jsスクリプトを使用してdivにロードすると、FlickrセットイメージはSmoothDivScrollで機能しません。 Flickrセットの最初の画像だけが表示され、スクロールしません。

私は、SmoothDivScrollスクリプトが実行されているときに、まだflickrセットイメージが読み込まれていると推測しています。 Flickrセットがまだdivにロードされている場合でも、スクリプトを待機させるか、または作業を開始するにはどうすればよいですか?

*ハードコードされた画像を.scrollableArea divに追加し、Flickrスクリプトを使用してテストしました。これが起こると、最初にhtmlからハードコードされたイメージを表示してから、flickr setイメージを表示します。

答えて

0

バージョン1.2では、新しいメソッドchangeContentがあり、Flickr(RSSフィード)からコンテンツを読み込むオプションがあります。あなたのフォトセット用のRSSフィードがある場合は、その方法を使ってイメージをロードしてみてください。ここに例があります:

$("#makeMeScrollable").smoothDivScroll("changeContent", "http://api.flickr.com/services/feeds/[email protected]&format=json&jsoncallback=?", "flickrFeed", "add", "first"); 

このコードを使用する前に、プラグインを初期化する必要があります。この方法はあまり頻繁には使用されていません(私が知っている限り)ので、あなたにはうまくいくかどうか、次のバージョンで改善できる点があれば教えてください。

幸運を祈る!

関連する問題