D3.js 图表在 Internet Explorer 11 中可见,但在 Internet Explorer 11 中



我在一台机器上创建了一个非常漂亮的日历报告,它将我公司的每日收入显示为过去几年中每天的颜色编码块。在最终确定配色方案并几乎完成之后,我去另一台机器上测试它 - 并遇到了一个相当大的障碍。

这是我用作模板的报告:http://bl.ocks.org/mbostock/4063318

真棒。而且,在Internet Explorer 11中,它看起来很棒。我从没想过复制代码并测试报表会产生一个空白页,但它就是这样。在该页面上,日历报表可见。在 IE 11 中。将代码复制到新的 html 文件并打开它,不会显示任何内容。然而,在Firefox中,一切都是可见的。照原样。

现在,该页面的一部分指向

"//d3js.org/d3.v3.min.js">

发现,为了在Firefox中做到这一点,我必须在前面添加http:,所以这不是我的问题。

我真的坐在办公桌前,盯着打开的两个浏览器窗口并指向同一个html文件。一个包含我漂亮的报告,一个是完全空白的页面。

一些粗略的谷歌搜索显示IE 8或更低版本与svg有问题。不过,我似乎找不到有关有类似问题的人的任何参考资料。他们的情况似乎是,对于IE10,您需要指定高度和宽度,而不仅仅是一个或另一个,以确保所有内容都正确缩放。

如果我能按照自己的方式,我会在所有将要运行报告的机器上运行 Firefox,即使它只是为了一件事!唉,我只是一个纯粹的农民程序员,所以我必须让它工作。在可怕的IE中。

是否有任何svg/html/d3.js编码器可以告诉我另一种方法来吐出我正在使用的数据,以便我得到我正在寻找的东西?

复制代码并测试报表将生成空白页

因为您正在输出无效的 HTML。初学者没有htmlhead元素。

将代码输出到像example.xhtml这样的文件中,并在Firefox中打开它(特别是(,因为它的XML解析器会很快告诉您第一个XML解析器错误发生在哪一行和哪一列上。您以标准模式而不是怪癖呈现,但这并不意味着您的页面符合标准。

var m=(document.compatMode == 'CSS1Compat') ? 'Standards' : 'Quirks'; window.alert(m+'-mode.');

最新更新