1

我正在尝试添加基于各种主题的推特搜索时间线,例如搜索不同节日的所有最新推文。我找到了一个关于如何使用带有 Jquery 和 Ajax 的 twitter API 对不同推文进行一般搜索的教程,但是在我可以进一步前进之前,当我在浏览器中运行网页并尝试不同时,我没有得到任何结果显示搜索主题。该代码类似于教程,我仍在学习不同的 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();
                    });
                }
            });
        });
    });

我将衷心感谢您的帮助。

4

2 回答 2

0

您的代码中的 url 在 Twitter API 中已被弃用。

正确的 url 是https://api.twitter.com/1.1/search/tweets.json但需要经过适当的身份验证。有关更多信息,请参阅 API 文档https://dev.twitter.com/docs/api/1.1/get/search/tweets

于 2013-08-19T10:47:40.070 回答
0

那是因为 JavaScript 在以下几行崩溃:

$tweets.find('.handle').html(twttr.txt.autoLink("@"+tweet.from_user));
$tweets.find('.text').html(twttr.txt.autoLink(tweet.text));

您正在尝试访问twttr不存在的名为的变量(至少,不在您发布的代码中)。这就是#resultsdiv 为空的原因。

删除这些行(或正确初始化这些变量)将解决您的问题。

看到这个小提琴:http: //jsfiddle.net/YSBtC/1/

于 2013-04-08T12:45:45.700 回答