vis.js-setWindow()无法正确设置窗口

时间:2018-08-18 19:37:57

标签: query-string vis.js vis.js-timeline

我正在使用vis.js中的时间表。根据我的查询字符串(您可以在下图中看到它),我需要应用一些过滤器,并使用查询字符串中的开始日期和结束日期来设置窗口。

在这种情况下,开始日期应为2015年11月13日星期五。我使用getWindow()方法作为测试,以在绘制时间轴后显示该值,并且警报窗口显示2015年13月13日(相同就像查询字符串中一样)。但是...出于某种原因,窗口使用2013年作为开始日期。好像窗口是在时间轴中的项目之后设置的。

我正在使用4.21.0版本。我尝试使用4.16.1,然后按预期方式工作(但不适用于我的小组-最终,我在时间表创建中遇到了其他一些错误)。

有人知道为什么窗口没有正确更新吗?您可以在下面找到我用于初始化时间轴的方法。

我也尝试更新选项(开始日期和结束日期),但是它也不起作用

initializeData = function()
{
  //Check URL and QueryString
  var url = window.location.href.toString();
  var queryString = (url.split("?"))[1];

  if (queryString == undefined || queryString=="" || queryString==null)
    resetData();
  else //Else: filter data based on URL QueryString
{
  var query = decodeURI(queryString);
  var startAndEnd = [];

  var result = query.split('&');
  for (var i = 0; i < result.length; i++) {
  var cat = result[i].split('=')[0];
  var values = result[i].split('=')[1];

  var isArray;
  if (cat.indexOf('[]') != -1) //Contains the characters
    isArray = true;
  else
    isArray = false;

  var pair;
  if (isArray)
    pair = { 'cat': cat, 'values': [values] };
  else
    pair = {'cat': cat, 'values': values };

  //Pick parts from the query string and create filters, groupsArray and zoomSettings
  if (cat == "start" || cat == "end") {
      var repl = values.replace(/%3A/g,':');
      var repl2 = repl.replace(/\+/g,' ');
      var val = repl2.replace(/%2B/g,'+');
      pair = {'cat': cat, 'val': val };
      startAndEnd.push(pair);
  }
  else if (cat == 'region[]' || cat =='region')
  {
    allGroups = loadTestGroups();
    for (var j = 0; j < allGroups.length; j++) {
        if(allGroups[j].region == values)
          filterGroupsArr.push(allGroups[j]);
    }
  }
  else
    currentFilters.push(pair);
};


  RunFilter();

  //ERROR with stWindow()
  timeline.setWindow(((startAndEnd[0]).val).toString(), ((startAndEnd[1]).val).toString(), {animation: false});

  var windowdate = timeline.getWindow();
  alert(windowdate.start);
  }
 }

enter image description here

0 个答案:

没有答案