TimelineJS 是用于绘制时间轴的 Javascript 开源脚本,目前是 TimelineJS3 版。参阅 https://github.com/NUKnightLab/TimelineJS3
原文:https://timeline.knightlab.com/docs/json-format.html
译文:http://www.cnblogs.com/popapa/p/timelinejs_data.html
采集日期:2018-5-29

TimelineJS JSON 数据格式

Timeline 需要将事件相关的数据显示出来,多数人喜欢用 Google spreadsheet 配置 Timeline 数据。
但如果想编写代码动态创建或更新时间轴,则需要了解生成结构化数据的方法。

如果只是想速战速决,或许复制一份示例数据(比如 Whitney Houston)就可以了。
不然的话,就请阅读完整的文档,如下所示。

当知道如何为时间轴创建 JSON 数据后,还需要将其放在页面上

TimelineJS 的 JSON 格式数据由一个 JSON 对象组成,包含以下属性:

名称 是否必填 说明
events 由 slide 对象组成的 JSON 列表(参阅下文
title  slide 对象(参阅下文
eras 由 era 对象(参阅下文)构成的 JSON 列表
scale human cosmological。未给出时的缺省值为human。当时间为非常遥远的古代或将来时,才会用到 cosmological。(早于公元前271821年4月20日星期二,或者晚于公元275760年9月13日星期六。)使用 cosmological 时,最小刻度单位是“年”。不过公元前271821年和公元275760年之间的时间,也是可以用 cosmological 的。

Slide 对象 带有以下属性:

名称 是否必填 说明
start_date 是(对 title 除外) date 对象(参阅下文
end_date date 对象(参阅下文
text 否(但推荐给出) text 对象(参阅下文)
media media 对象(参阅下文
group 可填入任意文本。如果给出,则 Timeline 会将 group 值相同的事件归在同一行或相邻行,以明显与其他组的事件分隔开。同组的 group 值会作为标签显示在导航条的左侧。
display_date Timeline 显示日期时用到的字符串。如果给出本值,就会覆盖此事件的开始或结束日期中的 display_date 值。如果要表达两个日期之间的相互关系,本值就非常有用。
background Javascript 对象。可以带有以下属性:

url:指向背景图片的完全限定格式 URL

color:十六进制格式的 CSS 色彩值(如:#0f9bd1),或者合法的CSS 色彩关键字

autolink 布尔值(truefalse)。 默认为 true,表示 Timeline 会扫描 text 字段并自动添加 <a> 标签,使得链接和邮件地址“可被点击”。如果设置为 false,在需要用到链接时仍可以在字段中手动添加 <a> 标签。本自动链接属性适用于 text 对象中的 text 字段,以及 media 对象中的 captioncredit 字段。
unique_id 在 Timeline 所有 slide 中保持唯一的字符串值。如果未指定,TimelineJS 将根据标题构建一个 ID。但如果以后对标题进行了修改,自动生成的 ID 也将会随着更改。当在配置中启用了 hash_bookmark 参数时,本值才会生效。还可以与timeline.goToId()方法配合起来使用,以编程方式将时间线移动到指定的 slide。

Era 对象用于在时间轴导航组件上标记一段时间。本质上是个加了严格限制的 slide 对象。

名称 是否必填 说明
start_date date 对象(参阅下文
end_date date 对象(参阅下文
text 否(但推荐给出) text 对象(参阅下文)

Date 对象带有以下属性:

名称 是否必填 说明
year 数字格式,不要用逗号。公元前要用负值表示,而不要用“BC”、“BCE”等字母标识。
month 数字 1-12。Javascript 高手请勿自作聪明,Timeline 不采用 Javascript 那种古怪的用法,比如用“0”表示一月。
day 数字格式。
hour 数字 0-23。
minute 数字 0-59。
second 数字 0-59。
millisecond 数字格式。
display_date 代表本日期的字符串。当 Timeline 的日期格式不满足需求时,就很有用了。

Text 对象带有以下属性。slide 的 text 是可选项。

名称 是否必填 说明
headline 任意文本。可以包含 HTML 标记,也可以为空。
text 任意文本。可以包含 HTML 标记,也可以为空。对 era 对象不适用。

Media 对象带有以下属性。slide 的 Media 是可选项。

名称 是否必填 说明
url 多数情况下是个 URL,完整说明详见media 类型文档类型文档。
caption 任意文本。可以包含 HTML 标记。
credit 任意文本。可以包含 HTML 标记。
thumbnail 指向图片的 URL,供事件的 timenav 标记使用。如果省略,Timeline 将根据媒体类型自行选择图标。本属性与 title 型 slide 无关,因为它们不带标记。
alt 供图片的 alt 标记使用。如果未给出,则会用已给出的 caption。
title 图片的 title。如果未给出,则会用已给出的 caption。
link_target 如果用到了 link,则可供其 target 使用。

TimelineJS JSON 数据格式 - 译文 [原创]的更多相关文章

  1. 使用 json 模块,使json数据格式与Python字典dict数据格式互相转换,获取数据更加方便

    一.定义 JSON 是一种数据格式 使用 javaScript (Java 死鬼破特)对象表示法 二.特点 1.JSON 与 XML格式数据的区别 ====== 两种格式的数据,都是跨语言,跨平台 c ...

  2. XML和JSON数据格式对比

    概念 XML 扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语 ...

  3. VS快速生成JSON数据格式对应的实体

          有固定好的Json数据格式,你还在手动敲对应的实体吗?有点low了!步入正题,这是一个json字符串,先去验证JSON数据格式(http://www.bejson.com/)如下: { & ...

  4. jQuery EasyUI:根据数据库内容生成适合于easyui-tree的JSON数据格式

    1,jQuery EasyUI中easyui-tree特定的JSON数据格式 [ {"id":1,"text":"某公司","ch ...

  5. iOS 阶段学习第22天笔记(JSON数据格式介绍)

    iOS学习(OC语言)知识点整理 一.JSON数据格式 1)概念:json是一种网络数据传输格式,有值/对象:{“A”:1,”B”:”2”…}词典:对象的序列:[,,,,,]数组两种数据类型 2)UR ...

  6. JS中将JSON的字符串解析成JSON数据格式《转》

    在JS中将JSON的字符串解析成JSON数据格式,一般有两种方式: 1.一种为使用eval()函数. 2. 使用Function对象来进行返回解析. 使用eval函数来解析,并且使用jquery的ea ...

  7. JSON 数据格式

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言.易于人阅读和编写,同时也易 ...

  8. JSON数据格式

    JSON 数据格式 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON采用完全独立于语言的文本格式,这些特性使JSON成为理想的数据交换语言.易于人 ...

  9. MVC返回JSON数据格式书写方式

    返回json数据格式,多个返回值加,隔开 [Route("api/users/web")] //如果不加这个路由请这样调用:/api/users/web?schoolname=十五 ...

随机推荐

  1. DevExpress05、TileControl、AlertControl

    TileControl控件 该控件是根据Windows 8的用户界面设计的,可以轻松地把各个控制块集成到窗体上. 1.   IndertBetweenGroups属性 控制两个Group之间的间距: ...

  2. python open 关于读、写、追加的总结

    # -*- coding: utf-8 -*- # 测试文件名为: # text.txt # 测试文件内容为: # abcdefg # 每次操作后将文件复原 # r # 以只读方式打开文件,文件不可写 ...

  3. DDOS攻击详解

    导读 Ddos的攻击方式有很多种,最基本的Dos攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应. 在信息安全的三要素——“保密性”.“完整性”和“可用性”中,DoS( ...

  4. 【转】SQL 常用关键字释义和用法

    转自: http://blog.csdn.net/iamwangch/article/details/8093933     下面 是 从网络上整理 出来的 SQL 关键字和 常用函数的 释义和简单用 ...

  5. 蓝桥杯 历届试题 九宫重排 (bfs+康托展开去重优化)

    Description 如下面第一个图的九宫格中,放着 1~8 的数字卡片,还有一个格子空着.与空格子相邻的格子中的卡片可以移动到空格中.经过若干次移动,可以形成第二个图所示的局面. 我们把第一个图的 ...

  6. 【转】深入理解C++的动态绑定和静态绑定 & 不要重定义虚函数中的默认参数

    为了支持c++的多态性,才用了动态绑定和静态绑定.理解他们的区别有助于更好的理解多态性,以及在编程的过程中避免犯错误.需要理解四个名词:1.对象的静态类型:对象在声明时采用的类型.是在编译期确定的.2 ...

  7. 《基于Arm实验箱的国密算法应用》课程设计 结题报告

    <基于Arm实验箱的国密算法应用>课程设计 结题报告 小组成员姓名:20155206赵飞 20155220吴思其 20155234昝昕明 指导教师:娄嘉鹏 设计方案 题目要求:基于Arm实 ...

  8. 基于代的垃圾回收机制--《CLR via C#》读书笔记

    我们知道,垃圾回收在内存无限大的理想情况下是不需要的,正是因为内存存在的瓶颈,我们才需要垃圾回收.在<垃圾回收算法之引用计数算法>和<垃圾回收算法之引用跟踪算法>两篇文章中,我 ...

  9. mfc 友元类

    知识点 继承类成员的访问级别 友元类 继承访问控制: 基类 派生类(能否访问) public private protected 派生类类 派生类对象 派生类 派生类对象 派生类类 派生类对象 pri ...

  10. 阿里云代金券 - 双12疯了~~~ 4核8G 3M带宽只要1890元/3年

    阿里云双12大促简直疯了,4核8G 3M带宽只要1890元/3年,比双11疯狂多了,双11没有上车的赶快来买吧!!! 前去阿里云双12活动页面 截图如下: 从截图中可以看出,不仅4核8G降到了地板,1 ...