【问题标题】:Kendo UI Chart disable legend item right click eventKendo UI Chart 禁用图例项右键单击事件
【发布时间】:2019-09-01 08:21:06
【问题描述】:

我有一个使用带有图例的 Kendo UI 图表的应用程序。当用户单击图例项时,将调用 Kendo onLegendItemClick(e) 方法。但是传递给该函数的事件不包含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);
});

应用程序有一个单独的指令来处理右键单击。当用户right点击图例项时,有没有办法阻止Kendo调用onLegendItemClick(e)方法?

【问题讨论】:

    标签: javascript angularjs kendo-ui


    【解决方案1】:

    在已保存事件列表中添加“点击”1

    document.addEventListener("mousedown click", saveEvent, true);
    
    function saveEvent(ev) {
        $scope.savedEvent = ev;
    }
    
    $scope.$on("$destroy", function () {
        document.removeEventListener(saveEvent);
    });
    

    相关问题:How to prevent right click from deselecting marker in Kendo-UI

    【讨论】:

    • 我将该响应用于我的代码,但它在支持触摸的设备上失败了。我现在就试试这个。不幸的是,我们不能禁用 onLegendItemClick 方法进行右键单击。至少给我们原始事件剑道...
    • 向 Kendo-UI 团队提交new issue
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-06
    • 2012-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多