2016-02-28 62 views
0

我有以下用例:在页面上有一个Highcharts列,其中包含向下钻取as in this example。 单击条形图下方的标签时,我想钻取,如默认。然而,当点击栏/栏本身时,我不想钻取,而是获得点击栏上的信息(例如,类别的名称)。这怎么可能?Highcharts在酒吧/列点击没有深入点击

我到目前为止试过的是用jQuery评估点击事件,然后通过使用“return false;”来停止深入钻取。问题在于我没有办法检索列数据,因为JavaScript对象本身不可访问。 然后我做的是使用“钻取”事件。我现在可以轻松访问对象数据/属性,但有两个难点:

  1. 如何识别条形或条形标签下方的标签是否被点击?
  2. 如何防止单击酒吧时的向下钻取?

非常感谢您提示和提示!

安迪

+0

你可以有酒吧click事件尽量防止默认点击行为 – Strikers

回答

0

你可以用doDrilldown方法,并有决定什么应该发生,当,片段:

(function (H) { 
    H.wrap(H.Point.prototype, 'doDrilldown', function (p, hold, x) { 
    var UNDEFINED; 
    if (x !== UNDEFINED) { 
     p.call(this, hold, x); // x is defined when clicked on a category 
    } else { 
     myFun(this); // call your method after click on a bar 
    } 
    }); 
})(Highcharts) 

和现场演示:http://jsfiddle.net/L51c8fa4/

+0

非常感谢,这个作品完美!只有一个问题:这是记录在Highcharts文档还是如何提出这样的解决方案? – Andy

+0

我为Highcharts工作;)我们监视stackoverflow以及我们的论坛或电子邮件。总的来说[扩展Highcharts](http://www.highcharts.com/docs/extending-highcharts/extending-highcharts)被记录。但是要找到合适的方法来包装,你需要深入研究源代码。 –