6

我正在尝试基于此示例实现 highcharts 平移:http: //jsfiddle.net/HXUmK/5/

但我希望能够用鼠标左键缩放并用鼠标右键平移。所以我修改了上面的代码并设法让它工作了一点,但是当我按住鼠标右键平移时,图表也会缩放。

有没有办法可以禁用鼠标右键放大highcharts?

编辑:对不起,不是很清楚。jsfiddle 中的代码不是我的代码。忘记那个代码,这只是我开始的一个示例表单。我正在尝试修改该代码以获得左键缩放和右键平移。所以我禁用了鼠标滚轮缩放并激活了标准 highcharts 缩放

Edit2:这是我的代码:http: //jsfiddle.net/TKPQN/

4

2 回答 2

3

您可以尝试选择事件:

chart: {
        ...
        events:{
            selection: function(event) {
                if (lastButton == 1)
                    event.preventDefault();
            }
       }
    }

http://jsfiddle.net/TKPQN/48/

于 2013-03-14T18:49:02.457 回答
0

我想使用Shift键进行缩放,所以这是我的解决方案

 $('#container').highcharts('StockChart', {
    chart: {
        //zoomType: 'x', // we declare it without zoom, so the pan is enabled
        // ...
    }}); 
    var chart = $('#container').highcharts();
    chart.pointer.cmd = chart.pointer.onContainerMouseDown;
    chart.pointer.onContainerMouseDown = function (a){
        //in my case, I need only X zooming, so I enable it if shift is pressed
        this.zoomX=this.zoomHor=this.hasZoom=a.shiftKey;
        this.cmd(a);
    };

似乎工作正常,所以希望它对你有帮助

这是一个 JSFiddle 工作示例:http: //jsfiddle.net/73bc23zq/

于 2014-09-08T20:09:23.380 回答