angular - 如何在 typescript 的 Angular2 Highcharts 中添加鼠标滚轮代码

标签 angular highcharts angular2-highcharts

我需要在 highcharts 垂直滚动条中添加鼠标滚轮。我在这个 fiddle http://jsfiddle.net/d3r8pb7c/ 中得到了代码但该代码是用 jQuery 格式编写的。当我尝试通过以下方式在 typescript 中添加代码时,鼠标滚轮不起作用。

this.options = {
            chart: {

                events: {
                    wheel: function (event) {
                        var delta, extr, step, newMin, newMax, axis = this.xAxis[0];
                        var dataMax = this.xAxis[0].dataMax,
                            dataMin = this.xAxis[0].dataMin,
                            newExtrMin,
                            newExtrMax;

                        e = this.pointer.normalize(event);
                        delta = e.detail || -(e.deltaY / 120);
                        delta = delta < 0 ? 1 : -1;

                        if (this.isInsidePlot(e.chartX - this.plotLeft, e.chartY - this.plotTop)) {
                            extr = axis.getExtremes();
                            step = (extr.max - extr.min) / 5 * delta;

                            if ((extr.min + step) <= dataMin) {
                                newExtrMin = dataMin;
                                newExtrMax = extr.max;
                            } else if ((extr.max + step) >= dataMax) {
                                newExtrMin = extr.min;
                                newExtrMax = dataMax;
                            } else {
                                newExtrMin = extr.min + step;
                                newExtrMax = extr.max + step;
                            }

                            axis.setExtremes(newExtrMin, newExtrMax, true, false);

                        }

                        stopEvent(event); // Issue #5011, returning false from non-jQuery event does not prevent default
                        return false;
                    },
                }
            },

如果有人在 Highcharts angular2 typescript 中添加鼠标滚轮事件,请帮助我。

最佳答案

首先,代码不依赖于jQuery,所以不需要导入。

我尝试通过创建新模块并将其导入组件文件中来包含附加的 JSFiddle 中的代码。实际上,我不知道你做错了什么,但我的例子运行良好。

import Stock from 'highcharts/modules/stock';
import Wheel from '../plugins/wheel-event'

Stock(Highcharts)
Wheel(Highcharts)

实例: https://stackblitz.com/edit/highcharts-cloning-chart-s7kztw

关于angular - 如何在 typescript 的 Angular2 Highcharts 中添加鼠标滚轮代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52847691/

相关文章:

angular - TS1146 : Declaration expected . 。为什么?

javascript - 如何在 highcharts 的每个级别上使用不同图表的 drilldown up to level 3?

javascript - highcharts范围线问题

javascript - Highcharts 如何在同一行上对齐两个图表 yAxis

angular - 在进行 http 调用并使用 for 循环后,如何在我的 Angular App 图中使用更新的数据?

node.js - Express/Node 响应 header 列表?

html - Angular 2+模板中值的三元运算符

javascript - 如何使用 angular2-highcharts 和 AOT 编译器导入导出.js 和导出数据.js?

html - Angular:覆盖其他组件的CSS

mysql - 忽略数据库中的 Null 值 ConsoleTvs Charts