1

我从“Highcharts Demo - VU Meter”示例中获取了 jsFiddle,并进行了一些更改来演示我的问题。我的修改版本:http: //jsfiddle.net/kCpTt/

在更新 VU Meters 的计时器循环中,我添加了此代码,以便还为每个 yAxis 元素调用 update() 方法。(注意:在我在项目中使用的代码中,我实际上将一些更新传递给了 yAxis,但这些更新是无关紧要的,因为无论传入什么,包括这个空对象,这个问题都存在)

chart.yAxis[0].update({});
chart.yAxis[1].update({});

我还将 yAxis 标签中的一个设置为“useHTML:true”,而将另一个保留为默认值。如果您检查标签(使用 Firefox 或 Chrome 开发人员工具),您会看到每次计时器触发并更新数据点时,只有使用 HTML 的 yAxis 标签会<div style="position: absolute; left: 0px; top: 0px;" class="highcharts-axis-labels"></div>留下一个空白,因为它会为标签创建一个新标签. 不使用 HTML 的另一个不会获得这些孤立的 div。

编辑:我确信这是一个错误,所以我提交了一份实际的错误报告:https ://github.com/highslide-software/highcharts.com/issues/1960

编辑2:就像那样......错误已被修复。很棒的工作。https://github.com/highslide-software/highcharts.com/commit/9d60d9f4aaf5cdc266c1daabf43ccddc103d0115

4

1 回答 1

0

新修复对我没有帮助,所以我做了一个 hack。在图表上使用加载事件从错误的 div 中删除位置

events: {
            load: function(event) {
                $('#YOURCONTAINER div.highcharts-container div.highcharts-axis-labels').css("position", "");
            }
        }
于 2013-10-04T09:47:18.100 回答