好了,你可以直接拔下鼠標按下處理程序用下面的代碼:chart.container.onmousedown
。這不是最好的解決方案(並且在使用觸摸事件時我沒有在移動設備上進行測試),但無論如何,這是一個很好的起點。
在這裏你可以找到現場演示:http://jsfiddle.net/3qYAZ和演示代碼:
window.chart = new Highcharts.Chart({
chart: {
renderTo: 'container',
zoomType: 'x'
},
series: [{
data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4]
}]
}, function (chart) {
var checkbox = $('#zoom'), // a checkbox input in your html
zoomHandler = chart.container.onmousedown;
checkbox.on('change', function() {
if (this.checked)
chart.container.onmousedown = zoomHandler;
else
chart.container.onmousedown = null;
});
});
我能理解你爲什麼會想「縮放控制」從外部按鈕來改變縮放以同樣的方式highstock的範圍有默認的按鈕對於特定的日期範圍,但我無法確定如何通過提供一個完全按「開」或「關」的縮放按鈕來幫助最終用戶:它似乎不是特別必要的功能。 – mg1075 2012-02-17 04:15:48