gpt4 book ai didi

javascript - Highmaps:如何检测enableDoubleClickZoomTo 的目标?

转载 作者:行者123 更新时间:2023-11-27 23:50:46 25 4
gpt4 key购买 nike

我有一张在 Highmaps 中渲染的美国 map ,其中 enableDoubleClickZoomTo 设置为 true。我一直试图辨别用户双击缩放 map 的状态,并想知道 redraw 事件中是否隐藏了可以帮助我计算此值的信息。

这是这个问题的一个 fiddle :http://jsfiddle.net/tjnicolaides/x8q1d1cs/

$('#container').highcharts('Map', {
chart: {
events: {
redraw: function (event) {
console.log(event);
console.log(this.getSelectedPoints());
}
}
},

mapNavigation: {
enabled: true,
enableDoubleClickZoomTo: true
},

series: [{
data: data,
mapData: Highcharts.maps['countries/us/us-all'],
joinBy: 'hc-key',
allowPointSelect: true,
states: {
hover: {
color: '#BADA55'
},
select: {
color: 'purple'
}
}
}]
});

当我双击某个状态后 console.log event 时,我会得到一个大对象,其中包含有关整个图表状态的信息。

如果我单击选择一个状态,然后双击放大它,我会从 this.getSelectedPoints() 获取有关该状态的信息 - 但是,这是不合理的期望在缩放之前将选择任何内容。在某些 map 中,它可能会被完全禁用。我将其放在这里是为了演示我最初希望从重绘中获得的输出类型。计算邮政编码、州名称或索引来过滤原始系列是可以接受的。

最佳答案

我认为通过包装 Pointer.onContainerDblClick 来检测该点的最简单方法,如下所示:

(function (H) {
H.wrap(H.Pointer.prototype, "onContainerDblClick", function (p, event) {
console.log(this.chart.hoverPoint); // hovered point - may not exist, e.g. when clicking on the blank space
p.call(this, event);
});
})(Highcharts)

现场演示:http://jsfiddle.net/x8q1d1cs/8/

关于javascript - Highmaps:如何检测enableDoubleClickZoomTo 的目标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32724350/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com