У меня есть приложение, использующее диаграмму пользовательского интерфейса Kendo с легендой. Когда пользователь нажимает на элемент легенды, вызывается метод Kendo onLegendItemClick(e)
. Однако событие, которое передается этой функции, не содержит originalEvent
, поэтому нет никакого различия между правым и левым щелчками.
Вот соответствующая ссылка API: https://docs.telerik.com/kendo-ui/api/javascript/dataviz/ui/chart/events/legenditemclick
Я попытался добавить прослушиватель событий и захватить событие 'mousedown' перед вызовом onLegendItemClick, как показано ниже. Однако этот подход не работает на устройствах с сенсорным экраном (iPad, планшеты, мобильные устройства и т. Д.).
document.addEventListener("mousedown", saveMouseDown, true);
function saveMouseDown(ev) {
$scope.mouseDownEvent = ev;
}
$scope.$on("$destroy", function () {
document.removeEventListener(saveMouseDown);
});
Приложение имеет отдельную директиву для обработки правых кликов. Есть ли способ запретить Kendo вызывать метод onLegendItemClick(e)
, когда пользователь вправо щелкает элемент легенды?