1

我从这里开始使用 TimelineJS和 JSON 版本的数据检索。它工作正常,但我无法调整时间线开始的日期。

在文档中,它说要这样设置 JSON 文件:

    {
        "timeline":
        {
            "headline":"The Main Timeline Headline Goes here",
            "type":"default",
            "startDate":"1888",
            "text":"<p>Intro body text goes here, some HTML is ok</p>",

我已经复制了这一点,但只是更改了细节,例如:

{
    "timeline":
    {
        "headline":"HOT LATIN EVENTS",
        "type":"default",
        "startDate":"2012,09,30",
        "text":"Scroll through a list of Latin Music events>>> ",
        "date": [

             {
                "startDate":"2012,08,24",
                "headline":"PELIGRO Y SU BANDA  - Melbourne",
                "text":"<p><strong>Copacaban International</strong>, 139 Smith Street, Fitzroy, 3065</p>",
                "asset":
                {
                    "media":"http://www.clavecontraclave.com/Peligro%20-%20Melbourne%20klein.jpg",
                    "credit":"",
                    "caption":""
                }
            },

我也尝试过仅使用一年startDate(例如:2011)但没有效果。时间线从下面的第一个事件开始。

有谁知道发生了什么?

谢谢

4

1 回答 1

2

我还没有找到直接指定时间线开始日期的方法,但是您可以遍历时间线幻灯片以找到最接近的匹配项,然后使用该幻灯片的索引作为您的 start_at_slide 值。例如:

var timeline_dates = data_source.timeline.date;
var start_index = 0;
var target_date = new Date(); //set whatever date you want as your start date
for(x in timeline_dates) {
    var slide_date = new Date( timeline_dates[x].startDate );
    if( slide_date < target_date) start_index++;
}

然后当你实例化你的时间线时,你会像这样使用它:

createStoryJS({
    type:       'timeline',
    width:      '800',
    height:     '400',
    source:     data_source,
    embed_id:   'timeline_container',
    start_at_slide: start_index
});
于 2013-11-08T17:46:38.880 回答