我正在尝试根据各种主题添加Twitter搜索时间轴,例如搜索不同节日的所有最新推文。我发现了一个关于如何使用带有Jquery和Ajax的twitter API对不同推文进行常规搜索的tuturial,但在我进一步发展之前,当我在浏览器中运行网页并尝试不同时,我没有显示任何结果搜索主题。代码类似于tuturial,我仍在学习不同的twitter API来帮助我完成我的项目,但我认为我仍然感到困惑。请有人请看我的代码并告诉我我做错了什么。这是一个JSFiddle来演示我的问题:http://jsfiddle.net/YSBtC/这是javascript代码的主要来源
$(document).ready(function(){
$('#search').click(function(){
$('#results').html('');
console.log($('#i').val());
var search_term = $('#i').val();
$.ajax({
type: 'GET',
dataType: 'jsonp',
url: 'http://search.twitter.com/search.json',
data:{q: search_term},
success: function(data){
$.each(data.results, function(index, tweet){
$tweets = $(".tweet").first().clone();
console.log(tweet);
$tweets.find('.img').attr('src', tweet.profile_image_url)
$tweets.find('.name').text(tweet.from_user_name);
$tweets.find('.handle').html(twttr.txt.autoLink("@"+tweet.from_user));
$tweets.find('.text').html(twttr.txt.autoLink(tweet.text));
$tweets.hide().appendTo('#results').delay(400).fadeIn();
});
}
});
});
});
我真的很感谢你的帮助。
答案 0 :(得分:0)
因为JavaScript在以下几行崩溃:
$tweets.find('.handle').html(twttr.txt.autoLink("@"+tweet.from_user));
$tweets.find('.text').html(twttr.txt.autoLink(tweet.text));
您正在尝试访问名为twttr
的变量,该变量不存在(至少不在您发布的代码中)。这就是#results
div为空的原因。
删除这些行(或正确初始化这些变量)将解决您的问题。
看到这个小提琴:http://jsfiddle.net/YSBtC/1/
答案 1 :(得分:0)
您的代码中的网址已在Twitter API中弃用。
正确的网址是https://api.twitter.com/1.1/search/tweets.json,但需要经过适当的身份验证。 有关详细信息,请参阅API文档https://dev.twitter.com/docs/api/1.1/get/search/tweets