指令不适用于IE8

时间:2013-10-26 20:01:59

标签: angularjs internet-explorer-8 angularjs-directive

我有一个名为barsMax的指令,它在IE8中不起作用,即使我已经放置了:

<!--[if lte IE 8]> 
  <script> 
   document.createElement('bars-max'); 
  </script> 
<![endif]-->

我错过了什么?

2 个答案:

答案 0 :(得分:0)

您使用的代码也有伪标记bars-current

向您的polyfill添加document.createElement('bars-current');为我工作。

DISCLAMER:我在IE8标准模式下使用IE10,但如果不首先创建元素,则在控制台中抛出错误而jsfiddle本身在IE8中没有它

DEMO Working version

答案 1 :(得分:0)

IE不允许使用不熟悉的标签,因此您不能将指令用作标签。您必须使用限制“A”并将其用作已知html标记中的属性。如果你不想要包装器标签使用replace:true就像这样

返回{         限制:'A',         更换:真实,         范围: ...,         链接:... 你可以在这里看到一些关于https://skydrive.live.com/redir?resid=949DC4EDBFFD4738!189&authkey=!ABZCTBTTOCDYGhk

的所有例子

在ie8 native http://jsbin.com/IDOMuqU/2/edit中测试的工作版本 (在ie8中使用polyfills的http://jsbin.com/IDOMuqU/1/edit

中没有工作的版本