AngularJS和怪癖模式:IE8 +上的空白屏幕

时间:2014-02-12 22:09:10

标签: angularjs internet-explorer-8 quirks-mode

我正在开发一个Angular项目,该项目将包含在我无法控制的HTML页面中。 实际上我只能访问<body>元素内的内容。

有许多限制并不是最容易处理的: 1-我无法更改doctype:      2-我无法删除此元标记:      3-应用程序必须加载XML文件

我设法克服了第1点和第3点,但第2点让我头疼! 这是我在IE8 +上测试时遇到的错误(它在IE7和其他浏览器上运行正常):

  

[$ sce:iequirks] http://errors.angularjs.org/1.2.12/ $ sce / iequirks   错误模式下的IE8不受支持   组件$ sce中的错误   严格上下文转义不支持Internet Explorer版本&lt; 9在怪癖模式。您可以通过将文本添加到HTML文档的顶部来解决此问题。有关详细信息,请参阅http://docs.angularjs.org/api/ng。$ sce。

我在论坛上找到了很多解决方案但到目前为止还没有人工作过...... 特别希望禁用$ sceProvider(下面的代码)会使应用程序在IE8 +上工作,但它没有:

angular.module('ie7support', []).config(function($sceProvider) {
// Completely disable SCE to support IE7.
$sceProvider.enabled(false);`
});

我甚至尝试将<!doctype html>添加到我的HTML文档的顶部,我不允许这样做,但我只是为了测试,但它并没有解决问题。

任何帮助或建议都非常感激,因为我现在真的被困住了......

由于

3 个答案:

答案 0 :(得分:3)

搞定了!!

我只需要在下面的代码中提供我的应用程序的名称而不是愚蠢的“ie7support”:

angular.module('ie7support', []).config(function($sceProvider) {
// Completely disable SCE to support IE7.
$sceProvider.enabled(false);
});

感谢您对本文的深入了解: http://docs.angularjs.org/api/ng。$ SCE

希望它可以帮助你们中的一些人!

答案 1 :(得分:1)

答案 2 :(得分:1)

感谢你的回答Adam,但根据这些消息,禁用$ sce完全有助于AngularJS在怪癖模式下支持IE ...

https://github.com/angular/angular.js/issues/3633

[$sce:iequirks] Strict Contextual Escaping does not support Internet Explorer version < 9 in quirks mode