2

我一直在研究chartjs。它在 IE10 中运行良好,但是当我将文档模式更改为 IE8 时,它会引发以下错误

 Object doesn't support property or method 'getContext'  line.html, line 43 character 2

我尝试了这里建议的所有解决方案

我包括了 excanvas.js 但没有运气。

您可以在此处查看演示,访问此页面并将文档模式更改为 IE8。但是当我们将浏览器模式和文档模式更改为 IE8 时,父站点工作正常。请帮我解决这个问题

4

1 回答 1

5

在我的html中,我的标题中有这个

<!--[if lt IE 9]>
<script type="text/javascript" src="../shared/js/excanvas/r73/excanvas.js?v=${BUILD.TAG}"></script>
<![endif]-->

在我的 html 中,我的身体有这个

<!--[if lt IE 9]>
<body class="oldie">
<![endif]-->
<!--[if (gte IE 9)|!(IE)]>
<body>
<!--<![endif]-->

然后我像这样使用chart.js(使用jquery)

var isOldIE = $("body").hasClass("oldie");
var $canvas = this.$element.find("canvas");
var canvas = $canvas[0];
// kick old ie into creating fake canvas straight away
if(isOldIE) {
   canvas = G_vmlCanvasManager.initElement(canvas);
}
var chartObj = new Chart(canvas.getContext("2d"));
// do your stuff eg
chartObj.Pie(CHARTJS_DATA, CHARTJS_CONFIG);
于 2014-02-14T14:03:17.830 回答