Highcharts 重复定义

这个错误发生的原因是在 Highcharts 的命名空间重复,经常是因为以下两种情况下会发生:

一、Highcharts、Highstock、Highmaps 混合使用时引入了错误的文件

Highcharts、Highstock、Highmaps Highstock 是三款针对不同使用场景的图表产品,三款产品之间相互独立又有密切关系,混入使用时引入的文件是:

1、Highcharts + Highstock 时只需要引入 highstock.js

<script src="http://cdn.hcharts.cn/highstock/highstock.js"></script> 

2、Highcharts + Highmaps 混合使用是需要 引入 highcharts.js + map.js

<script src="http://cdn.hcharts.cn/highcharts/highcharts.js"></script> 
<script src="http://cdn.hcharts.cn/highmaps/modules/map.js"></script> 

3、Highstock + Highmaps 或 Highcharts + Highstock + Highmaps 混合使用时需引入 highstock.js + map.js

<script src="http://cdn.hcharts.cn/highstock/highstock.js"></script> 
<script src="http://cdn.hcharts.cn/highmaps/modules/map.js"></script> 

详见 使用教程

二、ajax 动态加载包含 Highcharts 的页面

多次通过 Ajax 加载(load)包含的 Highcharts 的页面时,就会导致 Highcharts 命令空间重复,正确的做法是将 Highcharts 相关的 js 引入在公共页面,另外尽量避免动态加载页面的做法。