0

ユーザーが表示する 1 つ以上の Twitter タイムラインを選択できるチェックボックス フォームがあります。現在、タイムラインはバッチで表示されます (つまり、最初のタイムラインのすべてのツイート、2 番目のタイムラインのすべてのツイート、というように続きます)。収集したすべてのツイートを 1 つの年表に分類してから出力したいと考えています。

ここに JS フィドルがあります: http://jsfiddle.net/brianeoneill/z9cuP/2/

$('input[type=submit]').on('click', function(e){

    // prevent default behavior of the submit button
    e.preventDefault();

    // empty the div with ID of tweets
    $('#tweets').empty();

    // perform a function on all of the checked boxes
    $(':checkbox:checked').each( function(){

    var twitterID = $(this).attr('data');

    // use the "data" attribute to build the query string for getJSON
    $.getJSON( 'http://api.twitter.com/1/statuses/user_timeline/'+twitterID+'.json?callback=?', null, function(data){

    // create an empty ul
    var tweetList = $('<ul id="tweets-list">');

    // for each JSON object returned, parse it into an li
    $.each(data, function(i, tweet){
        var item  = $('<li class="'+i+'">');
        var name  = $('<h2>').text(tweet.user.name);
        var date  = $('<small>').text(tweet.created_at);
        var img   = $('<img>').attr('src', tweet.user.profile_image_url);
        var msg   = $('<p>').text(tweet.text);
        item.append(img,name,date,msg);

        // add the li to the empty tweetList ul
        tweetList.append(item);

    }); // end of JSON parse function

  // SORT BEFORE SENDING TO DOM

  $('#tweets').append(tweetList);

li の配列を作成してから、Twitter のタイムスタンプで並べ替えてみましたが、常に空の配列になってしまいます。明らかに私は何かが欠けています。

前もって感謝します!

4

1 に答える 1

2

ヒント: すべてのツイート ID は時系列の昇順に生成されます。ツイートが誰のタイムラインからのものであるかは問題ではなく、タイムラインが混在していてもかまいません。ツイートを ID で並べ替えれば、正しい時系列順になります。

于 2013-02-01T14:51:34.373 に答える