我正在使用vis.js来绘制时间线。对于项目请求,我必须自定义时间轴格式,以mm:ss表示当前时间的倒计时。原始时间轴标签格式为:

我想像这样改变时间轴

例如:当前时间为11:20,下一时间间隔11:25应改为当前时间的倒计时,即5分钟(标签应显示05:00,格式为mm:ss)。11:30更改为10:00,11:35更改为15:00等。如果倒计时超过60分钟,格式应自动更改为HH:mm:ss。如果缩小到天数间隔,将自动显示倒计时天数。
有人能帮我吗?
发布于 2016-01-13 18:51:25
这不是您可以在时间线中配置的内容。您可以自定义时间的格式,但不能显示不同的时间。
要解决这个问题,您需要覆盖Timeline的一些方法,但我认为在这种情况下并不是那么复杂。基本上,您必须用自己的实现覆盖以下两个方法,以某种方式返回一个时间差异:
vis.timeline.TimeStep.prototype.getLabelMinor
vis.timeline.TimeStep.prototype.getLabelMajor您不必重新构建库本身,加载vis.js,然后覆盖这两个方法,然后加载您的时间轴就足够了。
这两种方法的源码在这里:
https://github.com/almende/vis/blob/master/lib/timeline/TimeStep.js#L522-L550
https://stackoverflow.com/questions/34760003
复制相似问题