FLOT十字线工作,但'传说'需要重新初始化

时间:2016-12-06 23:06:12

标签: flot legend

所有

我试图让十字准线跟踪三个波形。

enter image description here

十字准线确实显示,并且跟踪没有(oops ...参见 EDIT )。请注意 - 如图所示 - 水平条的图例只是DIV样式,看起来像是FLOT的图例。

可以找到CodePen here

当程序执行时,'传奇'变为null,字符串不更新......代码为:

legends = $(".legendLabel");

legends.each(function () {
    // fix the widths so they don't jump around
    $(this).css('width', $(this).width());
}); 

我最终不得不将此代码放在updateLegend()函数中。问题是'为什么&#39 ;?我坐在定时炸弹上吗? :-): - )

在附注中,再次感谢Raidri让我在当天早些时候开始。

- 编辑 - 跟踪已经发生(我已经设法在发布问题的过程中修复它)。我唯一的疑问是必须重新初始化变量'传奇'在函数updateLegend()

- 编辑2 - 此代码适用于Chrome和Firefox,但在IE中失败:'对象不支持属性或方法"分配&#34 ;&#39 ;.我找到了解决方案here

以下代码将解决问题......

if (typeof Object.assign != 'function') {
  Object.assign = function(target) {
     'use strict';
     if (target == null) {
        throw new TypeError('Cannot convert undefined or null to object');
     }

     target = Object(target);
     for (var index = 1; index < arguments.length; index++) {
        var source = arguments[index];
        if (source != null) {
          for (var key in source) {
             if (Object.prototype.hasOwnProperty.call(source, key)) {
                target[key] = source[key];
             }
          }
        }
     }
     return target;
  };
}               

$.each(data1, function (idx, item) {
    Object.assign(item, {
        stack: true,
        lines: {show: false, steps: false },
        bars: {show: true, horizontal:true, width: 1}
    });
});

0 个答案:

没有答案