我正在尝试为我的某个图表的图例项添加一个popover。我正在使用twitter bootstrap并尝试了javascript方法以及模板方法而没有运气。当我尝试在图表的加载事件上使用javascript方法时,chart.legend.allItems数组总是为空,这很奇怪,因为如果我将chart.legend属性打印到控制台,我会看到长度为4的allItems属性如果我将chart.legend.allItems属性打印到控制台,它将长度显示为0.无论如何,当图表的加载事件触发时,不会加载allItems数组。弹出窗口的javascript方法导致$(...)。popover不是函数错误,因为加载触发时未定义“.highcharts-legend-item”。事实上,当事件触发时,所有图表属性和元素都不会被加载。
加载活动
events: {
load: function(e) {
$(".highcharts-legend").popover({trigger:'hover', placement:'bottom', title:'Title!', content:'Content'}).hover(function() {
$('.popover').appendTo($(document.body));
});
}
模板
legend: {
align: 'left',
verticalAlign: 'bottom',
layout: 'vertical',
x: 0,
y: 2,
labelFormatter: function () {
return '<span>' + this.name + '</span><i class="fa fa-info-circle"></i>';
},
useHTML:true
修改 我忘了从bootstrap加载popover.js,但这并没有完全解决问题。我能够显示popover的唯一一次是将“.highcharts-legend”选择器传递给jquery。尝试使用“.highcharts-legend-item”或“.highcharts-legend”的任何子元素都不会显示弹出窗口。有什么想法吗?