我正在尝试向magento添加highcharts,但我收到了以下错误
TypeError: N is not a function (highcharts.js line 192)
我的local.xml
<adminhtml_mymodule_show>
<reference name="head">
<action method="addJs"><file>mymodule/js/highcharts.js</file></action>
<action method="addJs"><file>mymodule/js/my_charts.js</file></action>
</reference>
</adminhtml_mymodule_show>
my_charts.js
document.observe("dom:loaded", function() {
var chart = new Highcharts.Chart({
chart: {
renderTo: 'container',
type: 'bar'
},
title: {
text: 'Fruit Consumption'
},
xAxis: {
categories: ['Apples', 'Bananas', 'Oranges']
},
yAxis: {
title: {
text: 'Fruit eaten'
}
},
series: [{
name: 'Jane',
data: [1, 0, 4]},
{
name: 'John',
data: [5, 7, 3]}]
});
});
我的观看文件
<div class="entry-edit">
<div class="entry-edit-head">
<h4 class="icon-head head-customer-view">
<?php echo $this->__('Test header') ?></h4>
</div>
<h1><?php echo $this->test; ?></h1>
<div id="container" style="width:100%; height:400px;"></div>
</div>
我检查了Firebug,这些文件被添加到head标签内。我也试过添加prototype-adapter.js或使用独立框架,但它没有用 - 我每次都会从标题中得到错误。
我使用的是magento 1.9和highcharts 4.0.4。
感谢您的帮助
答案 0 :(得分:1)
Javascript在highchart.js中无法识别N.可能有外部js需要与highchart.js一起加载。
确保在highchart.js之前加载jQuery。