2012-12-27 29 views
0

我是jquery和javascript的新手。在這裏我有一個代碼,它使用twitter獲取推文;搜索api。可以喲請告訴我爲什麼在.done()之後我們將參數「響應」傳遞給函數?這是如何工作的?使用「響應」從搜索API獲取推文

$('#input').submit(function(e){ 
     e.preventDefault(); 
     e.stopPropagation(); 
      var hashtag = $(this).find('input[name="hashtag"]').val(); 
      var twitterapi = "http://search.twitter.com/search.json?"; 
      jQuery.ajax({ 
       type: "GET", 
       url: twitterapi, 
       data: { 
       "q": hashtag, 
       "rpp": 1000 
       }, 
       dataType: 'jsonp' 
      }).done(function (response) { 
       var results = response.results; 
       for (var i = 0; i < results.length; i++) { 
       $("#tweet").append("<p class='tweet'>" + 
        "<span class='username'>" + 
        results[i].from_user + 
        "</span> <span class='tweet_content'> " + 
        results[i].text + "</span></p>"); 
       } 
      }); 

回答

0

在done函數中,添加一個函數參數,也稱爲回調函數。 .done是異步調用,一旦嘰嘰喳喳服務器接收到調用,結果 在回調函數中傳遞(函數在.done()中)。響應數據在響應變量中返回 。

+0

所以「響應」一詞代表來自twitter的數據?我可以改變任何事情嗎?或者它只能是迴應? – user1263375

+0

您無法更改任何關於回覆的信息,repsonse包含來自twitter的數據。哦,你可以把它命名爲'twitterresponse'等任何你想要的東西。 – specialscope