JSON解析器不起作用

出于某种原因,我的json twitter解析器无法正常工作? 任何人都有任何想法为什么?
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

<script type="text/javascript">

    function outputHtmlToDiv(tweet,i){
      count = i + 1;
      $('#wrapper #sidebar .profile').html('<img src="'+tweet.profile_image_url+'" alt="Pretty Klicks" />');
    }
        $(document).ready(function(){

        var url = 'http://twitter.com/statuses/user_timeline/prettyklicks.json?count=1';

            $.getJSON(url,function(json){
                $.each(json.user,function(i,tweet){
                  outputHtmlToDiv(tweet,i);
                });
              });

        });


</script>
    
已邀请:
你有一些错误,主要是你在网址中需要
&callback=?
,如下所示:
 var url = 'http://twitter.com/statuses/user_timeline/prettyklicks.json?count=1&callback=?';
否则jQuery不知道发出JSONP请求(正常的XHR请求是跨域阻止的,是同源策略的补充)。你的get结构有点偏,基础对象是一个数组,整体看起来应该是这样的:
function outputHtmlToDiv(tweet, i) {
  count = i + 1;
  $('#wrapper #sidebar .profile').html('<img src="'+tweet.user.profile_image_url+'" alt="Pretty Klicks" />');
}
$(function(){
  var url = 'http://twitter.com/statuses/user_timeline/prettyklicks.json?count=1&callback=?';
  $.getJSON(url,function(json){
    $.each(json,function(i,tweet){
      outputHtmlToDiv(tweet,i);
    });
  });
});​
你可以在这里测试一下,因为上面的对象中的
json
是一个推文数组,你需要直接遍历那个数组,
json.user
将是未定义的(数组没有一个名为
users
的属性),
json[0].user
然而,是你的想。     
'+tweet.profile_image_url+'
之后缺少报价 试试这个:
$('#wrapper #sidebar .profile').html('<img src="'+tweet.profile_image_url+'" alt="Pretty Klicks" />');
    
是因为你在img / src之后有未公开的引用吗? Intead:
$('#wrapper #sidebar .profile').html('<img src="'+tweet.profile_image_url+' alt="Pretty Klicks" />');
尝试:
$('#wrapper #sidebar .profile').html('<img src="'+tweet.profile_image_url+'" alt="Pretty Klicks" />');
    
您需要使用JSONP回调参数(请参阅文档)。使用jQuery,你可以使用?它会生成一个名字:
var url = 'http://twitter.com/statuses/user_timeline/prettyklicks.json?count=1&callback=?';
    

要回复问题请先登录注册