2012-04-20 2 views
6

Я пытаюсь реализовать Highcharts панорамирования на основе этого примера: http://jsfiddle.net/HXUmK/5/Highcharts панорамирования

Но я хочу, чтобы иметь возможность увеличить с помощью левой кнопки мыши и сковороду с правой кнопкой мыши. Поэтому я изменил код выше и сумел заставить его работать немного, но когда я держу правую кнопку мыши, диаграммы также зомбируются.

Есть ли способ, который я могу отключить при нажатии правой кнопки мыши в высоких диаграммах?

Редактировать: Извините, что вы не очень поняли об этом. Код в jsfiddle не является моим кодом. Забудьте этот код, это просто пример формы, с которой я начал. Я пытаюсь изменить этот код, чтобы получить левую кнопку масштабирования и правую кнопку панорамирования. Поэтому я отключил колесико, приближать и активировали, стандартный Highcharts увеличить

edit2: Вот мой код: http://jsfiddle.net/TKPQN/

+0

Использование Mozilla 11 левой и правой кнопкой мыши сковороду, но не увеличить. – dgw

+0

@dgw - используйте колесико для мыши, чтобы увеличить масштаб этого jsFiddle. – wergeld

+0

Mousewheel для увеличения работает, (обе) кнопки мыши кастрюли. – dgw

ответ

0

Я ve хотел использовать 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/

+0

Это отлично работает! Есть ли способ предотвратить переключение всплывающей подсказки на смежные значения при панорамировании? – roldugin

3

Вы можете попробовать события выбора:

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

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

+0

Я использовал этот метод для достижения щелчка правой кнопкой мыши (только для оси x для моего приложения). Он работает очень хорошо, но я хотел бы избавиться от прямоугольника, который появляется на графике при масштабировании. Я хочу, чтобы он был доступен для увеличения, но не для правого клика. Есть ли что-то еще, что я могу сделать в if-блоке выше, что также отключит этот прямоугольник? –

Смежные вопросы