highcharts - HighCharts 工具提示出现在包含图表的对话框后面
问题描述
我有一个组织 HighChart,我使用 Angular 在 javascript 中动态创建。在 $scope.chartConfig 我声明了这些:
$scope.chartConfig = {
title: {
text: ''
},
chart: {
inverted: false
},
series: [ {
type: 'organization',
data: [],
keys: [ 'from', 'to' ],
showInLegend: true,
levels: [],
nodes: []
} ],
options: {
exporting: { enabled: false },
tooltip: {
enabled: true,
outside: true,
useHTML: true,
formatter: function() {
console.log("LOOK AT ME " + this.point.info);
return this.point.info;
}
}
}
};
当它是这样的时候,工具提示就会出现在这个对话窗口的后面。“看我”部分按预期显示在控制台中。
如果我删除 options: { tooltip: {...}} 部分,那么工具提示会像它应该的那样显示在前面,但它只有名称(默认值)而不是我想要的信息节目。
我尝试添加选项:{ tooltip: { zindex: 999 }},但没有任何变化 - 它仍然出现在后面。
我尝试添加选项:{ tooltip: { style: { zIndex: 999 }}} 也没有任何变化 - 工具提示仍然出现在对话框后面。关于如何让 HighCharts 工具提示出现在图表顶部而不是保存图表的对话框后面的任何想法?谢谢。
该图像显示了一个对话框中的图表,该对话框是从一个对话框启动的,该对话框后面有工具提示,该工具提示位于启动对话框的主页前面。
我尝试在 JsFiddle 中重新创建,但我正在努力解决一些 Angular 问题,并且由于这是一个对话框,它从前一个窗口获取信息,这使得它很难破解。
解决方案
由于 z-index 的问题,我很难在在线代码编辑器中重新创建它。具体来说,如果您将工具提示的“外部”选项设置为 true,则 z-index 将被硬编码为每个 HighCharts 的 3:
if (this.outside) {
this.container = container = H.doc.createElement('div');
container.className = 'highcharts-tooltip-container';
H.css(container, {
position: 'absolute',
top: '1px',
pointerEvents: options.style && options.style.pointerEvents,
zIndex: 3
});
H.doc.body.appendChild(container);
this.renderer = renderer = new H.Renderer(container, 0, 0);
}
因为它在 getLabel() 中,所以没有简单的方法可以解决这个问题。这通常不是问题,因为我们的大多数图表不在对话框窗口中,但我正在处理的图表在嵌套对话框窗口中,这意味着 z-index 为 3 在它们后面。我将通过 HighCharts 提出这一点,但目前的解决方法是将 "outside" 设置为 false。
options: {
exporting: { enabled: false },
tooltip: {
enabled: true,
outside: false,
useHTML: true,
formatter: function() {
return this.point.info;
}
}
}
或者,如果您希望它与 outside=true 一起使用,那么您需要将其添加到您的 css 中(可以更改索引号但确保它很高) - !important 是什么使它推翻了我相信的 highcharts 中的设置:
.highcharts-tooltip-container {
z-index: 999999 !important;
}
推荐阅读
- json - 为什么我无法访问我的文件,尽管它在资源中?
- python - CSV 阅读器的索引超出范围
- c++ - 矢量搜索与数组搜索的时间成本
- ios - FBSDK 和 pod:命令 PhaseScriptExecution 失败,退出代码为非零
- wpf - 如何设置扩展器的实际标题部分,而不仅仅是内容
- html - 如何使联系表格居中并将某些输入放在某些行上
- swing - 如何修复“(java:22494):Gdk-WARNING ...”
- asp.net - 在asp.net的文本框中绑定默认文本
- plsql - 来自多个表的总和
- mysql - 如何加入两个都有 COUNT 和分组的查询而不头疼?