1

私の dygraph コードは IE8 では動作しません。コンソールに次のエラーが表示されます。

SCRIPT5009: 'CanvasRenderingContext2D' is undefined 
dygraph-combined.js, line 2 character 13300

これは、「dygraph-combined.js」でクラッシュする行です。

CanvasRenderingContext2D.prototype.installPattern=function(e){if ...

グラフは、まったく同じコードを使用して、IE9 と IE7 で正しく表示されます。

私が調査した可能な解決策はまだ機能していません (それらの多くは単に「excanvas.js を含める」だけです)。

Edit1: David Kiger のフィードバックの後、必要に応じてヘッダーを正確にフォーマットしようとしましたが、それでも機能しません。問題を切り分けるために、Yii のブートストラップも削除しました。これは正確なコードです:

<!-- DOCTYPE html -->
<HTML><HEAD>
<META content="IE=EmulateIE7; IE=EmulateIE9;" http-equiv=X-UA-Compatible>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<SCRIPT type=text/javascript src="/js/dygraph/excanvas.js"></SCRIPT>
<SCRIPT type=text/javascript src="/fonto/js/dygraph/dygraph-combined.js"></SCRIPT>
</HEAD>

excanvas.js でこの行をコメントしても機能しませんでした。

//el.style.overflow = 'hidden';

Edit2: 解決しました!

したがって、両方のソリューションを組み合わせる必要がありました。

IE の書式コード...

<!DOCTYPE html>
<html>
<head>  
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7; IE=EmulateIE9;">

...さらに、excanvas.js の行にコメントを付ける

//el.style.overflow = 'hidden';

順序も非常に重要です。

  • まずはexcanvas.js

  • 次にdygraph-combined.js

フィードバックをお寄せいただきありがとうございます。

4

0 に答える 0