轻松创建静态时间线网页,例如我的维基媒体时间线。查看使用 GitHub Pages 部署的示例站点的预览:https://molly.github.io/static-timeline-generator/。
内容
克隆此存储库,然后从该目录运行npm install
。
npm run-script serve
将构建项目并在本地提供静态文件(位于 http://localhost:8080)。 npm run-script build
仅运行构建步骤,而不启动开发服务器。
几乎所有需要更改的内容都在src/_data/content.js
中。
header
(HTML,可选):显示在页面顶部标题中的内容。footer
(HTML,可选):页面底部页脚中显示的内容。entries
(对象数组,必需):要在时间轴上显示的条目列表,按照它们应该显示的顺序。id
(字符串,必需):此时间线条目的唯一 ID。categories
(字符串数组,可选):适用于该条目的类别列表。这些将显示为页面顶部的复选框,并允许读者过滤时间线。它们可能不包含逗号。它们可以用连字符或空格分隔( sample category
或sample-category
都将在页面上显示为Sample category
)。没有任何类别的条目将始终显示。color
(字符串,可选):时间线上显示的圆圈的颜色。已定义的选项有green
、 red
和grey
。您可以在css/custom.css
中定义其他颜色(见下文)。faicon
(字符串,可选):在时间线圆圈中使用的 Font Awesome 图标的名称。探索选项。这只是图标名称(不带fa-
前缀)。例如: anchor
。datetime
(字符串,必须存在datetime
或date
):项目的日期和时间说明符。它可以是moment.js
识别的任何格式。我通常使用“YYYY-MM-DD HH-SS”。如果没有时间,只有日期,请使用date
参数而不是datetime
。date
(字符串,必须存在datetime
或date
):项目的日期说明符。 “年-月-日”。title
(HTML,必需):时间线条目的标题。image
(可选):要在条目中显示的图像src
(字符串,必需):要嵌入到页面上的图像文件的直接 URL,或此目录中图像的相对链接(例如img/filename.png
)。link
(字符串,可选):指向包含图像的页面的超链接,如果您希望人们能够单击它以查看更大的版本等。alt
(字符串,可选):描述图像的替代文本。caption
(HTML,可选):描述图像的标题。body
(HTML,必需):时间线条目的文本。如果你想要多个段落,你必须自己包含<p>
标签;否则将添加。links
(对象数组,可选):显示在条目底部的链接数组。href
(字符串,必需):链接的目标。linkText
(HTML,必需):链接文本。extra
(HTML,可选):在链接末尾显示的额外 HTML。pageTitle
(string, required ): <title>
标签中的文本,用于设置浏览器中页面的标题。pageDescription
(字符串,可选):要进入元标记的页面描述。pageAuthor
(字符串,可选):进入元标记的页面作者。 如果您想为时间轴上的圆圈添加更多颜色选项,您可以编辑src/css/custom.css
文件以添加您自己的颜色选项。您可以使用此工具来选择颜色并获取其十六进制颜色代码。它们的定义如下:
. timeline-icon . yourcolorhere {
background-color : # hexcol or code;
}
然后,您可以在 content.js 文件中使用color: yourcolorhere
。
替换src/img
文件夹中的图像以自定义页面 favicon 和 OpenGraph 图像。
运行npm run-script buld
后,您将看到一个_site
目录,其中包含带有站点内容的静态 HTML/CSS/JS 文件。您现在可以使用任何静态站点托管来部署这些文件!
要在 GitHub 页面(免费)上部署静态站点,请通过运行git subtree push --prefix _site origin gh-pages
创建一个包含根目录中的静态文件的分支。然后,您可以转到存储库的“设置”>“页面”选项并选择“从分支部署”,然后选择gh-pages
作为分支。
有一些很好的教程可用于在各种其他免费服务上部署静态站点。下面列出了一些。
您还可以查找有关如何部署使用 Eleventy 构建的站点的教程,因为这就是该项目的动力。一些网络托管服务(例如 Vercel)以一些非常方便的方式专门支持 11ty。
npm run-script build
_site
时间轴在平板电脑上可以很好地呈现:
或移动设备:
这应该适用于所有现代浏览器。不支持 IE <9。
如果不启用 JavaScript,页面会正常降级。但是,帖子将显示在单列时间线中,并且过滤器不会显示。
该项目使用
它是在 MIT 许可下发布的。