Javascript 格式化用于Twitter提要的JSON数据
我正在尝试向我的网站添加Twitter提要。这个简单的任务已经发展成一个全面的项目,我需要一些帮助 我已经注册了Twitter的API,通过使用它:我能够从Twitter提要检索定制的JSON数据 例如,以下是我的Twitter(@herogreeg)JSON数据: 我了解JSON是如何工作的,但考虑到这是我第一次尝试解码JSON,我感到不知所措 有人能建议我如何将这些数据转换成HTML代码吗?我只需要一个起点,我已经看到了一些示例,但是它们没有链接到外部文件,所以很难从中学习。我不是要求别人帮我做工作,但是如果有人能提供一些东西,而不是一个写着“阅读本指南”的页面链接,那就太好了。谢谢 编辑:也许这样就可以了 使用jQuery。。。jQuery.get()。。第一个参数是您的站点URL json,第二个参数是回调。访问jquery网站。。。(Im使用手机,无法粘贴代码rs)Javascript 格式化用于Twitter提要的JSON数据,javascript,ajax,json,twitter,Javascript,Ajax,Json,Twitter,我正在尝试向我的网站添加Twitter提要。这个简单的任务已经发展成一个全面的项目,我需要一些帮助 我已经注册了Twitter的API,通过使用它:我能够从Twitter提要检索定制的JSON数据 例如,以下是我的Twitter(@herogreeg)JSON数据: 我了解JSON是如何工作的,但考虑到这是我第一次尝试解码JSON,我感到不知所措 有人能建议我如何将这些数据转换成HTML代码吗?我只需要一个起点,我已经看到了一些示例,但是它们没有链接到外部文件,所以很难从中学习。我不是要求别人
现在您可以使用foreach在视图中浏览数据并打印 对我来说,最好的解决方案是使用JQuery的Get函数(如建议的那样)。我以前从未使用过JSON,下面是我管理的:
$(document).ready(function(){
$.getJSON( "/tweetledee/userjson.php?c=10&user=d_seaman&xrp=1&xrt=1", function(obj) {
$.each(obj, function(key, value) {
$("#feed").append("<li>"+value.text+"</li><li>"+value.retweet_count+"</li><li>"+value.favorite_count+"</li><li>"+value.user.name+"</li>");
var date = $('<small>').text(prettyDate(value.created_at));
$("#feed").append(date);
});
});
});
/*
* JavaScript Pretty Date
* Copyright (c) 2011 John Resig (ejohn.org)
* Licensed under the MIT and GPL licenses.
*/
function prettyDate(time){
var date = new Date((time || "").replace(/-/g,"/").replace(/[TZ]/g," ")),
diff = (((new Date()).getTime() - date.getTime()) / 1000),
day_diff = Math.floor(diff / 86400);
if ( isNaN(day_diff) || day_diff < 0 || day_diff >= 31 )
return;
return day_diff == 0 && (
diff < 60 && "just now" ||
diff < 120 && "1 minute ago" ||
diff < 3600 && Math.floor( diff / 60 ) + " minutes ago" ||
diff < 7200 && "1 hour ago" ||
diff < 86400 && Math.floor( diff / 3600 ) + " hours ago") ||
day_diff == 1 && "Yesterday" ||
day_diff < 7 && day_diff + " days ago" ||
day_diff < 31 && Math.ceil( day_diff / 7 ) + " weeks ago";
}
});
$(文档).ready(函数(){
$.getJSON(“/tweetledee/userjson.php?c=10&user=d_seaman&xrp=1&xrt=1”,函数(obj){
$.each(对象,函数(键,值){
$(“#feed”).append(“”+value.text+” “+value.retweet\u count+” ”+value.favorite\u count+” “+value.user.name+” );
变量日期=$('').text(prettyDate(value.created_at));
$(“#提要”)。追加(日期);
});
});
});
/*
*漂亮的日期
*版权所有(c)2011 John Resig(ejohn.org)
*根据MIT和GPL许可证获得许可。
*/
函数prettyDate(时间){
变量日期=新日期((时间| |“”)。替换(/-/g,“/”)。替换(/[TZ]/g,“”)),
diff=(((新日期()).getTime()-Date.getTime())/1000),
日差异=数学楼层(差异/86400);
如果(isNaN(日差)| |日差<0 | |日差>=31)
返回;
返回日_diff==0&&(
差值<60&“刚刚”||
差值<120&“1分钟前”||
差异<3600和数学楼层(差异/60)+“分钟前”||
差值<7200&“1小时前”||
差异<86400和数学楼层(差异/3600)+“小时前”)||
day_diff==1&“昨天”||
日差<7日和日差+“日前”||
日差<31&&Math.ceil(日差/7)+“周前”;
}
});
此代码获取以下信息:推特/转发/收藏夹/用户名/发布日期
JSON脚本(prettyDate)下面的脚本将日期转换为更简化的格式。因此,它没有显示“Sat Dec 17 02:20:42+0000”,而是显示“1小时前”