高调平移

时间:2012-04-20 11:38:16

标签: zoom highcharts panning

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

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

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

编辑:很抱歉不太清楚。 jsfiddle中的代码不是我的代码。忘掉那段代码吧,这只是我开始的一个例子。我试图修改该代码,以便左键缩放和右键按钮平移。所以我禁用了鼠标滚轮缩放并激活了标准高位图缩放

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

2 个答案:

答案 0 :(得分:3)

您可以尝试选择事件:

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

请参阅http://jsfiddle.net/TKPQN/48/

答案 1 :(得分: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/