2016-02-11 81 views
2

我在一台机器上创建了非常漂亮的日历报表,该报表显示我公司的每日收入为每天的彩色编码块过去几年。在终于搞定了一个配色方案并完成了最终定稿之后,我去了另一台机器上测试 - 并且遇到了一个相当大的障碍。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编码器在那里可以告诉我另一种方式来吐出我正在使用的数据,以便我可以得到我在找的东西?

+1

请修改您的标题,在IE11中可见或不可见? –

+0

请更正您问题的标题 –

+0

它既是。您可以在宣传报告的网站上看到可见的报告,但将代码复制到html文件并查看该文件不显示任何内容。我会发布一个澄清。 – Kingrames

回答

1

复制代码和测试报告将产生一个空白页

因为输出无效的HTML。对于初学者,没有htmlhead元素。

将代码输出到example.xhtml这样的文件中,并在Firefox中打开它(特别是),因为它的XML解析器将很快告诉你第一个XML解析器错误正在发生的行和列。你正在渲染标准模式而不是怪癖,尽管这并不意味着暗示你的页面符合标准。

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

突然它变得更有意义。所以Firefox正在应用信息来使其工作,但IE只是拒绝显示任何东西。这给了我一个更好的起点。谢谢。 – Kingrames

+0

通常人们会说浏览器在怪癖模式下会呈现不同的效果,尽管它在标准模式下保持不变;只是因为它有一个文档类型并不意味着它会呈现相同。 XML解析器将解释一个'xhtml'扩展名为application/xhtml + xml的文件;我在我的实时网站(XHTML5)上使用了这个功能,并且当您使用XML解析器可以更快地完成工作时,没有任何理由使用HTML的不存在的错误报告。没问题。 :-)哦,我的猜测是IE浏览器将所有内容都解释为头部元素。 – John