试图从不同的邮政编码获取推文的问题

时间:2012-11-23 20:49:48

标签: javascript html twitter

我正在尝试从不同的邮政编码中获取推文。为此,我使用每个邮政编码的纬度和经度值。到目前为止,我想为每个邮政编码获得3条推文(我有2个邮政编码),但它只适用于一个邮政编码。 任何建议将不胜感激。提前谢谢!

这是我的代码:

<!DOCTYPE HTML>
<html>
    <head>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
        <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>

        <script>
            var lat=[41.9716,42.0411];
            var lng=[-87.7026,-87.6900];
            $(document).ready(function() {
            for(var i=1; i<2; i++)
            {
                $.getJSON('http://search.twitter.com/search.json?q=business&geocode='+lat[i]+','+lng[i]+',5mi&lang=en&callback=?', function(data) {
                var data = data.results;
                var html = "";  
                for(var j=0; j<3;j++){
                    html += "<div style='width:600px;border:solid thin blue'><img src='"+data[j].profile_image_url+"'/><a href='http://twitter.com/" + data[j].from_user + "'>@"+ data[j].from_user + "</a>: " + data[j].text + "</div>";
            } 
            $('.content'+i).html(html);
            }); }
            });
    </script>
</head>

<body>
    <div class="content1"></div>
    <div class="content2"></div>
</body>

1 个答案:

答案 0 :(得分:1)

我发现您的代码有两个问题:

1)如果你想迭代2次,你的for函数应该是这样的:for (var i = 0; i < 2; i++)

2)您必须考虑到$.getJSON中调用的函数是异步运行的,所以当调用该函数时for已经完成,因此您无法使用{ {1}}在该函数中具有该目的的值。

因此,在纠正代码中的这两件事后,您应该能够得到您想要的东西。试试这样的事情:

i