解決的辦法很簡單。默認情況下,單擊事件選擇點(單擊這裏的任何一點:http://highcharts.com/demo/pie-basic)。
在你點的點擊處理程序,你毀掉點擊點(通過設置與SetData方法新的數據),但你不取消默認的動作,所以Highcharts試圖選擇不存在的點,這會導致錯誤。
正如我以前寫的,解決辦法很簡單,你只需返回false在
point: {
events: {
click: function() {
var drilldown = this.drilldown;
if (drilldown) { // drill down
setChart(drilldown.name, drilldown.categories, drilldown.data, drilldown.color);
} else { // restore
setChart(name, categories, data);
}
// return false to prevent default action
return false;
}
}
},
在這裏你可以找到一個工作演示:http://jsbin.com/ocegap/1