我想知道如何自定义自定义按钮的工具提示。
自定义按钮的所有示例都与this _titleKey: 'printButtonTitle'
将此设置为其他任何内容会导致undefined
作为工具提示。我花了一段时间来查看创建它的位置,但无法找到它。
此外,虽然使用类似id的内容并将其替换为jquery $('#foo-button title').html('yey');
,但自定义按钮没有分配ID。
答案 0 :(得分:6)
虽然接受了答案,但我想提出一个替代解决方案。
Highcharts确实为自定义按钮设置自定义标题提供了一种方法(遗憾的是,没有详细记录)。 Highchart从其全局语言对象Highchart.lang
中读取字符串。要拥有自定义标题,您需要使用Highcharts.setOptions()
全局方法将按钮标题添加为此属性中的新属性(您可以按名称调用新属性,但保留的属性除外),如下所示
Highcharts.setOptions({
lang: {
myButtonTitle: "Don't Click"
}
});
要记住的一件事是这是一个全局属性,因此需要在进行构造函数调用之前进行设置,并且必须在Highcharts命名空间中调用它,而不是作为单独的图表选项的一部分。
现在,您可以在按钮中使用上面设置的标题,方法是为按钮指定_titleKey
属性,其值与上面用于设置名称的键相对应
exporting: {
buttons: {
'myButton': {
_id: 'myButton',
symbol: 'diamond',
x: -62,
symbolFill: '#B5C9DF',
hoverSymbolFill: '#779ABF',
onclick: function() {
alert('click!')
},
_titleKey: "myButtonTitle"
}
}
}
答案 1 :(得分:2)
您可以使用id
为该按钮设置_id
,然后使用jQuery进行更新。
exporting: {
buttons: {
'myButton': {
_id: 'myButton',
symbol: 'diamond',
x: -62,
symbolFill: '#B5C9DF',
hoverSymbolFill: '#779ABF',
onclick: function() {
alert('click!')
}
}
}
}
var buttonTitle = 'updated title';
jQuery("#myButton").attr('title', buttonTitle).children().text(buttonTitle);