单击重置缩放按钮时触发的Highcharts图表单击事件(错误?)

时间:2013-04-03 14:32:57

标签: highcharts

我在图表上有一个点击事件,但如果您使用缩放并想要重置缩放,则也会触发点击事件。

我有以下图表设置:

$('#container').highcharts({
        chart: {
            type: 'line',
            marginRight: 130,
            marginBottom: 25,
            zoomType: 'x',
            events: {
                click: function (event) {
                    alert('chart click!');
                }
            }
        }...

参见工作示例:http://jsfiddle.net/2Y3ah/

这看起来像是一个错误,或者如果设计如何在点击重置缩放按钮时阻止点击事件。

3 个答案:

答案 0 :(得分:4)

一种肮脏的方式可以是查看srcElement

例如测试以下内容(检查firstChild是否为null ...)

event.srcElement.firstChild.data === "Reset zoom"

答案 1 :(得分:2)

您可以通过event.target识别是否单击了按钮 http://jsfiddle.net/2Y3ah/3/

 if(!($(event.target)[0].textContent))
                        alert('chart click!');

http://api.jquery.com/event.target/

答案 2 :(得分:1)

这是最终的解决方案。只需将以下配置设置为图表:

    $('#container').highcharts({
        chart: {
            resetZoomButton: {
                relativeTo: 'chart'
            }
        }
    });