在没有X-UA兼容的情况下将IE9设置为边缘模式(d3.js)

时间:2014-06-30 09:37:49

标签: javascript internet-explorer d3.js cognos compatibility-mode

我正在使用d3.js为Intranet开发数据可视化页面。页面需要在Internet Explorer中呈现,这会导致问题,因为所有Intranet页面都以怪异模式呈现。这使得IE在加载d3:SCRIPT5009: CSSStyleDeclaration is undefined时抛出错误,然后阻止d3的其余部分加载。

当其他现代浏览器或IE9在标准模式下呈现时,页面按预期工作,因此我认为怪癖模式是问题所在。

其他限制,以及我尝试过的不起作用的事情:

  • 该页面由我无法控制的模板系统(IBM Cognos)提供服务。因此,设置<meta http-equiv="X-UA-Compatible" content="IE=edge"> 不是选项,因为我无法修改标题。
  • 也无法在HTTP标头中设置等效标记。
  • 如果我向<body>添加元标记,我可以控制的页面的唯一部分,IE将忽略它。
  • IE的F12工具声称它处于文档怪癖模式,尽管浏览器本身处于IE9兼容模式。手动更改文档模式会导致Intranet站点重新加载页面并导航回父页面。我不明白为什么。
  • 取消选中&#34;在兼容性视图中显示内部网站点&#34;在比较视图设置中什么都不做。

目前我可以想到两种方法来解决这个问题:要么强制IE在标准模式下渲染,要么以某种方式重写d3.js以避免使用CSSStyleDeclaration,这会导致崩溃。我不知道如何处理其中任何一个。

0 个答案:

没有答案