首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从JSON中的下一项检索信息(Twitter )

从JSON中的下一项检索信息(Twitter )
EN

Stack Overflow用户
提问于 2011-04-23 21:39:47
回答 2查看 616关注 0票数 0

我正在尝试构建一个显示用户tweet的页面,但是在每条推文之间,我想要可视化表示用户在这段时间内可能输入的内容的空间。

我一直在用我想要达到的目标的逻辑进行一圈又一圈的循环,但却一事无成。我的当前代码在这里:http://jsfiddle.net/k5234/,但这不包括我试图实现的循环,代码将项‘field _at字段(当前tweet的日期/时间)从下一个item.created_at字段中删除。

如果有人能为我指出正确的方向,让我的代码能够工作,我将非常感激。我的工作基础是3x s == 1秒。

要澄清的是,如果用户在1.05pm发推特,然后在1.07pm再发推特,就会有120秒的空空间。120秒*3个字符=两个tweet之间的360个空格。希望这一切都有意义。

谢谢你,大卫

添加信息:想象有人不断推特。这一页将充满文字。然而,在现实中,有些人只是偶尔发推特。推文后的空间(直到下一条)将是一个大小,代表了他们在那个时候可以输入的内容。例如:我输入一条推特,10分钟内不要再发推特。在我的页面上可视化将是这最后一条推文,但前面的一条将出现1800个空格(10分钟*60秒*每秒3个字符= 1800个空格)。我能检索到的是在需要的时候推文的日期,但我遇到困难的是获取下一条推文的时间,以确定在以这种方式显示信息的阶段存在的差距。我实在无法更清楚地说明这个概念。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-04-23 22:16:52

我想你的问题很清楚。

看看这个解决方案是否有效:-

代码语言:javascript
复制
       function getTweets() {
            html += "<pre>";
            $.each(data, function(i, item) {
                html += item.text; // add tweet
                var timeCreated = new Date(item.created_at); // date of tweet
                if( (i+1) in data)
                {
                var timeTillNextTweet = new Date( data[ i+1 ].created_at);

                var timeDiff = timeTillNextTweet.getTime() - timeCreated.getTime();
                var secondsDifference = Math.floor(timeDiff/1000);

                // use secondsDifference to generate the spaces..
                }
            });
            html += "</pre>";
        }

希望这能有所帮助。

票数 1
EN

Stack Overflow用户

发布于 2011-04-23 22:07:33

也许是这样的:

代码语言:javascript
复制
var current;
var previous;
$.each(data, function(i, item) {
  previous = current;
  current = Date.parse(item.created_at);
  html += "Tweet " + i +" " + (previous - current)/3000 + " spaces\n"
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5767121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档