Недопустимая строка аргумента 80 в highcharts.js

Я уже проверил запятую, точку с запятой в коде, и все выглядит нормально. В Firefox и Chrome он работает нормально, но в IE8 он подсказывает мне строку Invalid Argument 80 в Highcharts.js, которая указывает на:

if(!C.namespaces.hcv)C.namespaces.add("hcv","urn:schemas-microsoft-com:vml")

Вот мой код

var chart = new Highcharts.Chart({
        chart: {
            renderTo: container[0],
            type: 'column',
            style: {
                fontFamily: '"Arial", "Helvetica", "sans-serif"',
                fontSize: '12px',
                fontWeight: 'bold'
            },
            spacingLeft: 0

        },
        credits: {
            enabled: false
        },
        title: null,
        yAxis: {
        title: null,
            lineWidth: 2,
            lineColor: '#505050',
            gridLineWidth: 0,
            labels: {
                step: 1,
                y: 0,
                style: {
                    fontFamily: '"Arial", "Helvetica", "sans-serif"',
                    fontSize: '11px',
                    fontWeight: 'normal'
                }
            },



            min: 0,
            minRange:0.1

        },
        xAxis: {
            categories:cat,
            labels: {
                style: {
                    fontFamily: '"Arial", "Helvetica", "sans-serif"',
                    fontSize: '11px',
                    fontWeight: 'normal',
                    width: '90px'
                }
            },
            tickWidth: 0
        },
        plotOptions: {
            column: {

                dataLabels: {
                    enabled: true,
                formatter: function() {


                        var percent =0;

                        var catName =this.x;

                        if(catName.indexOf('TAM')>=0){
                            percent = this.y ;             
                            if (percent <= 50) {
                                return '<span style="color: #7b4000">' + percent + '</span>';
                            } else {
                                return '<span style="color: #3a5305">' + percent + '</span>';
                            }

                        }

                        else {
                           percent =Math.round( this.point.shareValue * 100)/100;

                            if (percent <= 50) {
                                return '<span style="color: #7b4000">' + percent + '%</span>';
                            } else {
                                return '<span style="color: #3a5305">' + percent + '%</span>';
                            }
                        }
                    },

                    style: {
                        fontFamily: '"Arial", "Helvetica", "sans-serif"',
                        fontWeight: 'bold'
                    },
                    zIndex: 11,
                    useHTML: true
                },
                borderWidth: 0,
                shadow: false
            }
        },
        series: [{
            data: data
        }],
        legend: {
            enabled: false
        },
        tooltip: {
            enabled: false
        }
    }, function(chart) {
        for (var i = 0; i < 5; ++i) {
            chart.renderer.path(['M', 23, 160.5 - 28 * i, 'L', 34, 160.5 - 28 * i]).attr({
                'stroke-width': 1,
                stroke: 'white',
                'stroke-opacity': 0.7,
                zIndex: 10
            }).add();
            if ($.browser.msie && parseInt($.browser.version <= 8) && !CHART_CUT_LINE_FOR_IE) {
                continue;
            }
            chart.renderer.path(['M', 30, 160.5 - 28 * i, 'L', 300, 160.5 - 28 * i]).attr({
                'stroke-width': 1,
                stroke: 'white',
                'stroke-opacity': 0.3,
                zIndex: 10
            }).add();
        }
    });  

Есть идеи?

Спасибо.


person unidha    schedule 19.12.2013    source источник
comment
Вы не предоставили весь код. Используя ваш код диаграммы, настроив мои categories и data и включив jquery 1.8.3 ($.browser.msie недоступен с 1.9.0), я получил диаграмму без ошибок. Лучше всего подготовить пример в jsFiddle.   -  person Anto Jurković    schedule 19.12.2013
comment
пожалуйста, предоставьте полный код   -  person SPandya    schedule 19.12.2013


Ответы (2)


Попробуйте изменить эту строку:

if ($.browser.msie && parseInt($.browser.version <= 8) && !CHART_CUT_LINE_FOR_IE) {
            continue;
        }

to:

if ($.browser.msie && parseInt($.browser.version, 10) <= 8 && !CHART_CUT_LINE_FOR_IE) {
            continue;
        }
person Paweł Fus    schedule 19.12.2013

Я наткнулся на этот URL-адрес: Проблемы Highcharts IE с загрузкой jQuery ajax . Я прокомментировал приведенный ниже фрагмент из моего файла highcharts.js.

,C.createStyleSheet().cssText="hcv\\:fill, hcv\\:path, hcv\\:shape, hcv\\:stroke{ behavior:url(#default#VML); display: inline-block; }

Это работает, теперь это работает в IE.

person unidha    schedule 28.01.2014