2012-04-20 32 views
6

que estoy tratando de poner en práctica Highcharts paneo basan en este ejemplo: http://jsfiddle.net/HXUmK/5/Highcharts paneo

pero quiero ser capaz de acercar con el botón izquierdo del ratón y la sartén con el botón derecho del ratón. Así que modifiqué el código anterior y logré que funcionara un poco, pero cuando hago una panorámica con el botón derecho del mouse, los gráficos también se amplían.

¿Hay alguna manera de deshabilitar el botón derecho del mouse para acercar las notas altas?

Editar: Disculpa por no ser muy claro al respecto. El código en jsfiddle no es mi código. Olvida ese código, es solo un ejemplo de cómo empecé. Estoy tratando de modificar ese código para obtener el zoom del botón izquierdo y el botón derecho del botón. Así que he deshabilitado el zoom rueda del ratón y activó el Highcharts standar zoom

Edit2: Aquí está mi código: http://jsfiddle.net/TKPQN/

+0

El uso de Mozilla 11 tanto la cacerola botón del ratón a izquierda y derecha, pero no zoom. – dgw

+0

@dgw - use la rueda del mouse para acercar ese jsFiddle. – wergeld

+0

Rueda del mouse para hacer zoom, (ambos) botones del mouse pan. – dgw

Respuesta

0

I' he querido utilizar la tecla Shift para hacer zoom, esta es mi solución

$('#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); 
    }; 

parece funcionar bien, así que espero que le ayude

aquí es un ejemplo de trabajo jsFiddle: http://jsfiddle.net/73bc23zq/

+0

¡Esto funciona genial! ¿Hay alguna manera de evitar que la información sobre herramientas salte a valores adyacentes al paneo? – roldugin

3

Usted puede tratar con evento de selección:

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

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

+0

Utilicé este método para lograr el barrido con clic derecho (solo la dirección x para mi aplicación). Funciona bastante bien, pero me gustaría deshacerme del rectángulo que aparece en el gráfico cuando haces zoom. Quiero tenerlo allí para hacer clic con el botón izquierdo del zoom, pero no para hacer clic con el botón derecho sobre pan. ¿Hay algo más que pueda hacer dentro del bloque if que también desactivaría este rectángulo? –