在Internet Explorer 9中iframe中的d3图表不起作用

时间:2013-02-06 10:33:39

标签: internet-explorer cross-browser d3.js

我在网页中有一个iframe,用于加载由d3.js制作的折线图。它在IE9以外的所有浏览器中都能正常工作。 一旦你按下F12并重新加载页面,它也可以在IE9中工作。然后它会渲染图形。 我无法理解是什么问题。在第一次加载页面时,图形不会呈现,之后我按下F12和开发人员工具,然后如果我重新加载或刷新页面图形呈现并且工作正常。

任何人都能告诉我可能出现什么问题吗?

1 个答案:

答案 0 :(得分:0)

您可能在代码中调用了console.log()。当开关工具关闭时,IE不会公开此方法,从而引发错误,导致脚本无声地失败。当你点击F12,console.log()可用,瞧!,你的代码就可以了。要解决此问题,您可以删除对console.log()的所有来电,也可以添加脚本以使您对console.log的通话安全(信用到Michael Erickson):

if (!window.console) window.console = {};
if (!window.console.log) window.console.log = function () { };