0

d3.jsで作成された折れ線グラフをロードするために使用されるWebページにiframeがあります。IE9 を除くすべてのブラウザで正常に動作します。F12を押してページをリロードすると、IE9でも機能します。その後、グラフがレンダリングされます。何が問題なのか理解できません。最初のページ読み込みでグラフがレンダリングされず、その後 F12 を押すと開発者ツールが表示され、ページをリロードまたは更新すると、グラフがレンダリングされて正常に動作します。

何が問題なのか教えてもらえますか?

4

1 に答える 1

0

console.log()おそらく、コード内にへの呼び出しがいくつかあるでしょう。IE は、開発ツールが閉じられているときにこのメソッドを公開しないため、スクリプトがサイレントに失敗する原因となるエラーがスローされます。F12を押すと、console.log()利用可能になり、出来上がりです! 、あなたのコードは動作します。これを解決するには、 へのすべての呼び出しを削除するかconsole.log()、スクリプトを追加して安全な呼び出しを行うことができます( Michael Ericksonconsole.logの功績によるものです)。

if (!window.console) window.console = {};
if (!window.console.log) window.console.log = function () { };
于 2013-02-20T00:13:26.180 に答える