-1

JFeed プラグインを使用して、JavaScript で RSS フィードに関する情報を読み取ります。このプラグインは次のように使用できます。

jQuery.getFeed({
    url: 'rss.xml',
    success: function(feed) {
        alert(feed.title);
    }
});

次のようなフィード情報を返す関数を作成したいと思います。

function getFeed(feedUrl) {
    message ="Error";

    jQuery.getFeed({
        url: 'http://www.spiegel.de/schlagzeilen/tops/index.rss',
        success: function(feed) {
            message = feed;
        }
    });

    return message;
}

それは動作しません。のスコープ外でフィード変数を取得するにはどうすればよいjQuery.getFeed(...)ですか?

4

1 に答える 1

2

メソッドjQuery.getFeedは非同期であり、return が先に呼び出されるため、この方法では機能しません。

このフィードを取得するには、次のようにコールバックを使用する必要があります。

function getFeed(feedUrl, callback){

    message ="Error";

    jQuery.getFeed({
      url: 'http://www.spiegel.de/schlagzeilen/tops/index.rss',
      success: function(feed) {
         callback(feed);
      }
    });
}

getFeed(feedUrl, function(feeds_returned) {
  console.log(feeds_returned);
});
于 2013-05-02T10:56:11.203 に答える