Highcharts 右键单击高位图表系列时显示关联菜单

Highcharts 右键单击高位图表系列时显示关联菜单,highcharts,Highcharts,我想在高图中绘制的系列右键单击时显示关联菜单。我无法在高位图表中找到任何选项来执行此操作。有人能提出一种方法来达到这一要求吗 它不是内置功能,但您可以使用扩展,然后单击鼠标右键。最后一步是使用菜单显示/隐藏任何div。我完成了下面的解决方案。希望能有帮助 plotOptions: { series: { point: { events: { contextmenu: functio

我想在高图中绘制的系列右键单击时显示关联菜单。我无法在高位图表中找到任何选项来执行此操作。有人能提出一种方法来达到这一要求吗

它不是内置功能,但您可以使用扩展,然后单击鼠标右键。最后一步是使用菜单显示/隐藏任何div。

我完成了下面的解决方案。希望能有帮助

 plotOptions: {
        series: {
            point: {
                events: {
                     contextmenu: function (e) {
                            $('#constext-menu-div').css({top: e.chartY, left: e.chartX});
                            $('#constext-menu-div').show();
                            console.log(e);
                        },
                        click: function(){
                            $('#constext-menu-div').hide();
                        }
                }
            }
        }
    },

现在是2019年,基本的
海图下载仍然没有解决方案。我找到了一种操纵左键单击的方法,以便显示各种菜单。现在我知道这可能不是最好的情况,但您仍然可以从单击中完全访问所有数据,并且仍然能够执行正常的向下搜索功能等。您可能需要重新编写它。这是一个
TypeScript
示例,但只需少量编辑即可轻松复制到
JavaScript

请原谅菜单中缺少
CSS

函数在图表之前初始化。该变量用于防止菜单消失,在这里不是强制的

let callDrillDown=()=>{
警报(“1”);
}
让我们调用DrillDown2=()=>{
警报('drill2');
}
让mouseIn:boolean;
这是面包和黄油,在点击过程中,您从
HTML
中拉出
,并向其添加
onclick
操作

plotOptions:{
专栏:{
活动:{
单击:(事件:任意)=>{
让contextMenu=document.getElementById('contextMenu');
让contextMenuItem1=document.getElementById('contextMenuItem1');
让contextMenuItem2=document.getElementById('contextMenuItem2');
contextMenuItem1.onclick=callDrillDown;
contextMenuItem2.onclick=callDrillDown2;
contextMenu.onMouseCenter=()=>{
mouseIn=真;
};
contextMenu.onmouseleave=()=>{
mouseIn=false;
设置超时(()=>{
如果(!mouseIn){
setAttribute('style','display:none');
}
}, 1000);
};
contextMenu.setAttribute('style','top:'
+event.pageY+'px;左:'
+event.pageX+'px;');
}
}
}
}
在主体内部添加
HTML


资料
数据2

这是你的电话号码。希望这有帮助。

您的插件使用
jQuery
。。。我不建议通过右键单击实现一个大型库。这必须有其他的方法。谢谢你在我们的海图论坛上分享你的答案。当做不在chrome中为我拉小提琴。检查开发工具的控制台内部,这个小提琴给出了一个错误。如果从代码中注释HighchartsAdapter.fireEvent()方法并再次运行,则上下文菜单将正确显示。