如何在 visjs 时间轴中按时间顺序获取 getVisibleItems(或如何获取上一项)
how to get getVisibleItems in time order (or how to get the previous item) in visjs timeline
我需要为我的时间轴图表创建自定义的水平轴标签。当两天非常接近并且图表很小时。两个水平轴标签重叠。我想知道当有重叠时如何跳过一个或两个标签?
我正在做的方法是获取 vis-dot 位置,然后为 vis-dot 位置上方的标签创建一个div
var labeloffset = $(".vis-item.vis-dot."+item.id).offset().left;
我使用 getVisibleItems() 方法来获取所有可见项目。但问题是它没有按时间顺序排列。
var allVisableTtems = timeline.getVisibleItems();
我需要两个方面的帮助:
按时间顺序获取可见项。即,allVisableTtems 列表前面的最早项和 allVisableTtems 列表末尾的最后项
有什么方法可以在时间轴图表上获取上一项
感谢您的帮助。
您可以通过直接操作数据本身来对项目进行排序并获取以前的项目。
var ids = timeline.getVisibleItems();
var sortedVisibleItems = items.get(ids).sort(function (a,b) {
return a.start > b.start ? 1 : a.start < b.start ? -1 : 1
});
var index = sortedVisibleItems.indexOf(someItem);
var prevItem = sortedVisibleItems[index - 1];
您还可以通过为每个项目或类似内容添加prevId
和nextId
字段来自己创建一些链表。
相关文章:
- 使用AngularJS从时间戳中获取工作日
- 获取用户按键的时间
- 使用moment.js获取时间分区的偏移日期对象
- 获取给定lat-long的javascript中的当前日期和时间
- 获取本地时间的JS日期,日期对象中没有时区详细信息
- 用时间戳获取两个不同日期之间的时间差
- 从javascript数组获取php的日期时间
- 引导时间选择器在增加或减少小时和分钟的同时获取 NaN
- PhoneGap 2.0(Cordova)DatePicker插件'模式'-属性以获取日期和时间
- 输入视频文件时获取视频持续时间
- jQuery日期时间选择器-如何在javascript中获取日期
- 如何使用javascript获取最后一个全天时间戳
- 获取用户和服务器时间之间的时间差
- 如何使用jquery获取结束时间
- 将 JavaScript 的客户端时间获取到 PHP 中
- 从日期时间获取约会
- 如何从另一个网站或时间获取文本/数据
- Datepicker根据服务器日期/时间获取日期
- 使用正则表达式从日期和时间获取时间
- 如何比较日期& &;时间,获取时间差,然后在Javascript中将其设置为秒