javascript - Kendo UI Chart 禁用图例项右键单击事件
问题描述
我有一个使用带有图例的 Kendo UI 图表的应用程序。当用户单击图例项时,onLegendItemClick(e)
将调用 Kendo 方法。但是,传递给此函数的事件不包含originalEvent
,因此无法区分右击和左击。
这是相关的 API 参考:https ://docs.telerik.com/kendo-ui/api/javascript/dataviz/ui/chart/events/legenditemclick
我尝试在调用 onLegendItemClick 之前添加一个事件侦听器并捕获“mousedown”事件,如下所示。但是,这种方法在触摸屏设备(iPad、平板电脑、移动设备等)上会失败。
document.addEventListener("mousedown", saveMouseDown, true);
function saveMouseDown(ev) {
$scope.mouseDownEvent = ev;
}
$scope.$on("$destroy", function () {
document.removeEventListener(saveMouseDown);
});
该应用程序有一个单独的指令来处理右键单击。
onLegendItemClick(e)
当用户右键单击图例项时,有没有办法阻止 Kendo 调用该方法?
解决方案
将“点击”添加到已保存事件的列表1中:
document.addEventListener("mousedown click", saveEvent, true);
function saveEvent(ev) {
$scope.savedEvent = ev;
}
$scope.$on("$destroy", function () {
document.removeEventListener(saveEvent);
});
推荐阅读
- excel - 如何使用 VBA 中的“TimeIf”函数从用户在用户表单中输入的时间中减去特定时间?
- merge - Cherry-pick 提交及其合并提交而不解决冲突
- sql-server - SQL Server - 更新和选择
- c++ - 实例化后可以构造吗?避免空构造函数
- angular - Angular:更改检测破坏了计时器
- python - Python XPATH Selenium Elements 没有可见的文本结果
- python - 有没有办法从扫描的图像中检测多种语言?
- ruby - .zshenv:2:找不到命令:rbenv
- c# - .NET c# - 如何将附加数据传递给 PropertyChangedEventHandler
- python - 联立线性方程组解中的 NaN 和奇异矩阵误差