2012-09-27 106 views
0

我想知道如何自定义按钮自定义工具提示。highcharts/stock charts自定义工具栏按钮文本/标题

所有自定义按钮的例子是像this_titleKey: 'printButtonTitle'

undefined作为工具提示将其设置为别的结果。我花了一段时间从源代码中查找创建的位置,但无法找到它。

此外,尽管使用类似于id的东西,并用jquery $('#foo-button title').html('yey');取代它,但自定义按钮没有分配ID。

回答

2

您可以使用_idid设置为按钮,然后使用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); 

demo

+0

由于对应键的值的按钮_titleKey财产使用你的按钮上面的一组标题,奇怪你不能做一些简单的标题:'foobar'或tooltip:'foobar' – dogmatic69

6

虽然一个答案被接受,我想提出一个替代的解决方案。Highcharts确实给出了一种方法(不幸的是,虽然没有很好的记录)为自定义按钮设置自定义标题。 Highchart从其全球语言对象Highchart.lang中读取字符串。为了有一个自定义标题,您需要将按钮标题添加为新的属性(您可以通过名字来称呼新的属性,除了保留的)在使用Highcharts.setOptions()全局方法这个对象如下

Highcharts.setOptions({ 
    lang: { 
     myButtonTitle: "Don't Click" 
    } 
}); 

需要记住的一件事是这是一个全局属性,因此需要在构造函数调用之前进行设置,并且必须在Highcharts名称空间上调用它,而不是作为单个图表选项的一部分。

您现在可以通过指定与上面用来设置名称

exporting: { 
    buttons: { 
     'myButton': { 
      _id: 'myButton', 
      symbol: 'diamond', 
      x: -62, 
      symbolFill: '#B5C9DF', 
      hoverSymbolFill: '#779ABF', 
      onclick: function() { 
       alert('click!') 
      }, 
      _titleKey: "myButtonTitle" 

     } 
    } 
} 

Custom Button Title | Highcharts & Highstock @ jsFiddle

相关问题