javascript – HighCharts.js不是在IE8下呈现图表

前端之家收集整理的这篇文章主要介绍了javascript – HighCharts.js不是在IE8下呈现图表前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用HighCharts与 Python一起动态创建图表.一切工作正常,但是我无法读取IE8下的未定义异常的属性“0”.不幸的是,我的客户也希望它在IE8下工作.所以他的主要功能代码
function generateChart(series) {
    var chart = new Highcharts.Chart({
        chart: {
            renderTo: 'company_chart',},xAxis: {
            type: "datetime",yAxis: [{
            title: {
                text: "T1",{
            title: {
                text: "T2",opposite: true,}],plotOptions: {
            series: { shadow: false },column: { shadow: false,series: series
    });
);

现在我的ajax请求返回一些数据,并将其存储在变量中:

chart_data = [
    {
        type: "spline",color: '#ff0000',yAxis: 0,data: dataT1,{
        type: "column",color: '#0000ff',yAxis: 1,data: dataT2,}
];

之后我调用generateChart(chart_data);.变量dataT1和dataT2的格式很好,因为它在每个其他浏览器下工作.例如,dataT1可能如下所示:

dataT1 = [ [1325721600000,1.64],[1325635200000,[1325548800000,1.7],[1325462400000,];

但IE8下仍然抛出异常.任何想法如何解决这个问题?

解决方法

那些悬挂的逗号在Internet Explorer中导致错误.摆脱它们.

这里有一个例子:

chart: {
        renderTo: 'company_chart',// <--- get rid of that comma
    },

Internet Explorer在一个对象字面量的末尾考虑一个逗号作为一个错误.实际上您应该看到“页面上的错误”警告,但错误通常不表示这种真正的根本原因.

编辑 – 显然IE8并不挑剔,虽然IE7是.

再次编辑 – 但是,IE8将数组中最后一个悬挂的逗号解释为意味着应该有一个额外的元素!换一种说法:

[1,2,3,].length

在Firefox / Chrome / Safari中为3,Internet Explorer中为4.当您尝试访问该元素时,浏览器会给您未定义.

猜你在找的JavaScript相关文章