Kendo UI Chart отключить событие легенды правой кнопкой мыши - PullRequest
0 голосов
/ 10 апреля 2019

У меня есть приложение, использующее диаграмму пользовательского интерфейса 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), когда пользователь вправо щелкает элемент легенды?

1 Ответ

0 голосов
/ 11 апреля 2019

Добавить «клик» в список сохраненных событий 1 :

document.addEventListener("mousedown click", saveEvent, true);

function saveEvent(ev) {
    $scope.savedEvent = ev;
}

$scope.$on("$destroy", function () {
    document.removeEventListener(saveEvent);
});

Смежный вопрос: Как предотвратить отмена выбора маркером правой кнопкой мыши в Kendo-UI

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...