Использовать Java Script для получения последних двух твитов? - PullRequest
2 голосов
/ 28 марта 2012

Я пытался реализовать JavaScript, который читал мой аккаунт в твиттере и возвращает мне последние 2 твита ...

Я пытаюсь использовать XML, но он не работает должным образомЕсть простой способ сделать это?

<script>
var ajax = "";

$(function () {
    ret_tweets(1);
    $('body').data('page', 1);
    in_scroll();
});


function in_scroll() {
    $(window).scroll(function () {
        if (($(window).scrollTop() + $(window).height() + 10) >= $(document).height()) {
            $(window).unbind('scroll');
            ajax.abort();
            ret_tweets($('body').data('page'));
        }
    });
}


function retorna_tweets(pagina) {
    $('#list-tweets').append('<li class="Loading">Loading</li>');
    var screen_name = 'new';
    var url = 'http://api.twitter.com/1/statuses/user_timeline.json?callback=?';
    $('body').data('page', paging + 1);

    ajax = $.getJSON(url, {
        screen_name: screen_name,
        page: page
    }, function (tweets) {
        $('.carregando').fadeOut(function () {
            for (x in tweets)
            $('#list-tweets').append('<li>' + tweets[x].text + '</li>');

            in_scroll();
            $(this).remove();
        });
    });
}
</script>

Есть другое решение, использующее JAvaScript?

Ответы [ 2 ]

3 голосов
/ 28 марта 2012

Твиттер предлагает решение этой проблемы:

 <script type="text/javascript" src="http://twitter.com/javascripts/blogger.js"></script> 
  <script type="text/javascript" src="http://twitter.com/statuses/user_timeline/takewara.json?callback=twitterCallback2&amp;count=2"></script> 

Вышеуказанные два последних твита получат от пользователя takewara (да, это я в твиттере :))

EDIT Вот также фрагмент из моей страницы, как мне это сделать:

 <h2 style="display: none;" >Actualities</h2> 
  <div id="twitter_div"> 
   <h2 style="display: none;" >Twitter Updates</h2> 
    <ul id="twitter_update_list"></ul> 
     <a href="http://twitter.com/takewara" id="twitter-link" style="display:block;text-align:right;">..older tweets</a> 
   </div> 
   <script type="text/javascript" src="http://twitter.com/javascripts/blogger.js">   </script> 
 <script type="text/javascript" src="http://twitter.com/statuses/user_timeline/takewara.json?callback=twitterCallback2&amp;count=2"></script> 

</div> 
</div> 
2 голосов
/ 28 марта 2012

Попробуйте, должно работать:

JavaScript:

function twtLnks(txt) {
           p = txt.split(" ");
           txt = "";
           for (var i = 0; i < p.length; i++) {
              var str = p[i];
              var lnk = "https://twitter.com/#!/";
              if (str.indexOf("#") != -1) { str = '<a href="' + lnk + 'search/' + str.replace("#", "%23") + '" target="_blank">' + str + '</a>'; }
              if (str.indexOf("@") != -1) { str = '<a href="' + lnk + str.replace("@", "").replace(")", "") + '" target="_blank">' + str + '</a>'; }
              if (str.indexOf("http://") != -1) { str = '<a href="' + str + '" target="_blank">' + str + '</a>'; }
              txt += str + " ";
           } return txt;
        }

        function tweets() {
           if ($('.homeTwitter').length) {
              $('.homeTwitter').append('<span>Loading.</span>');
              //Here put your account
              var sn = 'YourAccount';
              var u = 'https://api.twitter.com/1/statuses/user_timeline.json?callback=?';
              var t = $.getJSON(u, { screen_name: sn }, function(twt) {
                 $('.homeTwitter span').fadeOut("fast", function() {
                    $(".homeTwitter").append("<ul></ul>");

                    for (var i = 0; i < 1; i++) {
                       if (twt[i]) {
                          var txt = twtLnks(twt[i].text);
                          $(".homeTwitter ul").append('<li>' + txt + '</li>');
                       } else {
                          break;
                       }
                    }

                    $(".homeTwitter").append('<a href="https://twitter.com/#!/' + sn + '" class="lnkMais"  target="_blank">@' + sn + '</a>');
                    $(this).remove();
                 });
              });
           }
        }

        $(document).ready(function() {
           tweets();
        });

IN C #

<div class="homeTwitter">
   <h2>Twitter</h2>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...