Javascript Highcharts:在点上设置“选择”状态,并在鼠标悬停后保持该状态?
我正在使用Highcharts并尝试在一个点上设置选择状态并保持该状态 我可以很好地设置状态,如下所示:Javascript Highcharts:在点上设置“选择”状态,并在鼠标悬停后保持该状态?,javascript,highcharts,Javascript,Highcharts,我正在使用Highcharts并尝试在一个点上设置选择状态并保持该状态 我可以很好地设置状态,如下所示: var chart = new Highcharts.Chart(options); chart.get('b').setState('select'); 但是,当用户将鼠标移到上方,然后离开该点时,该状态将被取消设置 下面是一个JSFIDLE示例-尝试将鼠标移到红点上,观察它是否丢失了select状态: 如果是选择状态,而不是悬停状态,那么即使在鼠标悬停之后,该状态也应该保持吗 我只想将
var chart = new Highcharts.Chart(options);
chart.get('b').setState('select');
但是,当用户将鼠标移到上方,然后离开该点时,该状态将被取消设置
下面是一个JSFIDLE示例-尝试将鼠标移到红点上,观察它是否丢失了select状态:
如果是选择状态,而不是悬停状态,那么即使在鼠标悬停之后,该状态也应该保持吗
我只想将点设为红色,并保持红色。我可以设置一个不受鼠标悬停影响的自定义状态吗?看起来该状态只是简单地更改为悬停状态,只要不重新设置,就不会返回。一切照旧 您可以做的是跟踪该点上的mouseout事件并再次指定状态。但它将从红色到灰色再到红色闪烁 我的建议是避免为此目的使用国家。我不知道您的商业案例,但如果它只是关于点颜色,您可以明确地将其添加到点,而不需要任何状态:
data: [
{'id': 'a', 'x': 185.4, 'y': 66.8},
{'id': 'b', 'x': 177.8, 'y': 75.5, color: "red" },
{'id': 'c', 'x': 180.3, 'y': 93.2}
]
我最终通过以下方法解决了这个问题:
point.select(true, true);
而不是
point.setState('select');
后者没有文件记录,而前者似乎是官方的做事方式 谢谢。我想让用户通过从下拉列表中进行选择来高亮显示一个点,并在用户在图表中的其他位置进行鼠标移动时使其保持高亮显示。必须手动更新颜色并重新绘制图表看起来很混乱,但如果这是唯一的方法:-/还有一个问题:如何将mouseout事件绑定到点变量?尝试点。在'mouseover'上,函数{…};但是得到一个错误。。。。看起来似乎没有办法将mouseout事件绑定到单个点?