AngularJS的IE浏览器兼容性

标签: angularjs ie 浏览器 | 发表时间:2014-04-05 14:15 | 作者:bijian1013
出处:http://www.iteye.com

一.概览
        如果你要让你的AngularJS应用兼容IE8和IE8以下的版本的话,你需要做一些特殊处理。

 

二.简易版

要让你的AngularJS应用在IE中正常运行你必须:

    a.确保JSON字符串能被正常解析(IE7需要),你可以使用JSON2或者JSON3来实现。
    b.不能使用自定义的元素标签,如<ng:view>(你只能使用属性的形式,如<div ng-view>)

或者
    c.如果你用了自定义的标签名,那你必须按照以下步骤做才能保证IE正常运行:

<htmlxmlns:ng="http://angularjs.org"><head><!--[if lte IE 8]>
  <script>
     document.createElement('ng-include');
     document.createElement('ng-pluralize');
     document.createElement('ng-view');
     // Optionally these for CSS
    document.createElement('ng:include');
    document.createElement('ng:pluralize');
    document.createElement('ng:view');
   </script>
<![endif]--></head><body>...</body></html>

        其中重要的部分是:
        xmlns:ng:命名空间,你需要为你使用或者准备使用的每一个自定义标签准备一个命名空间。
        document.createElement(你的标签名) :自定义标签的创建,因为这只是老版本IE的一个问题,所以你需要根据情况使用。对于每一个你没有使用命名空间或者HTML中没有定义的标签,你需要预先声明它彩色能使IE正常工作。

 

三.详细版
IE处理非标准标签名会产生问题。问题可以分为两类,每类都有自己的解决方法。
    a.如果标签名是以my:前缀开始的: 这会被当成是一个XML的命名空间,并且必须使用`来声明。
    b.如果标签没有:符号,但它又不是一个标准的HTML标签。那么就必须预先使用document.createElement('my-tag')来创建它。
    c.如果你准备使用css选择器来对自定义标签添加样式,那么你就必须先用document.createElement('my-tag')来创建一下,不管有没有XML命名空间。



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [angularjs ie 浏览器] 推荐:

AngularJS的IE浏览器兼容性

- - JavaScript - Web前端 - ITeye博客
        如果你要让你的AngularJS应用兼容IE8和IE8以下的版本的话,你需要做一些特殊处理. 要让你的AngularJS应用在IE中正常运行你必须:.     a.确保JSON字符串能被正常解析(IE7需要),你可以使用JSON2或者JSON3来实现.     b.不能使用自定义的元素标签,如(你只能使用属性的形式,如
).

IE 浏览器的创新

- - 博客 - 伯乐在线
译者按:IE 曾是 web 创新的先驱,但最近几年因为对 web 标准的支持落后于其他 浏览器以及低版本 IE 的各种 bug 而被人诟病. Zakas 带我们回顾了 IE 在 web 发展过程中扮演的辉煌角色,让我们能以一个更客观的眼光来看待 IE. 看完这篇文章,也许大家都会对 IE 浏览器有一定的改观,这也是我翻译这篇文章的目的.

“IE浏览器用户智商低”被证实是假消息

- 韡 - 互联网的那点事
最近,“IE浏览器用户智商低”的新闻被国内外各大媒体广泛报道. 然而,BBC经过调查,发现这是一条精心制造的假新闻. 这一结论最初来自一家名为AptiQuant的加拿大心理测试机构7月28日发布的新闻稿(附有非常专业的调查报告),称有10万人参与的网上调查结果表明,IE用户的智商低于其他浏览器用户.

假新闻:IE浏览器用户智商低

- 飞 - BBC 中文网| 中文网主页
假消息称,对比各类浏览器用户的智商,IE最低,引发媒体盲目追捧该消息. 周三(8月3日),一条特抢眼的新闻“Internet Explorer浏览器用户的智商更低”广为流传,谁也没料到这是一条假新闻. 包括BBC,CNN, 《每日邮报》、《每日电讯报》和《福布斯》杂志在内的各大主流媒体都被报道了这条假新闻.

IE 浏览器说 Google 帐户登录界面不安全

- 瑠音北樟 - 谷奥——探寻谷歌的奥秘
感谢读者 crazyhmx 的爆料. 今天,许多人都发现了用内置了防钓鱼功能的IE 8、9浏览器无法登录Google帐户了,当你试图登录跳转到accounts.google.com的时候,IE浏览器说这个网站不安全,建议你不要继续(如上图). 尤其对于IE9用户来说,想登录Google帐户是完全没可能的了,除非换用其它浏览器.

Chrome超越IE成全球第一大浏览器(图)

- - 业界
全球范围内,Chrome的份额已经超越了IE. 中国市场上IE仍然遥遥领先. 北京时间5月21日下午消息,美国市场研究公司Statcounter的数据显示,截至今年5月,Chrome已超越IE,成为全球第一大浏览器. Firefox和Safari位居第三和第四位. 数据显示,今年5月Chrome浏览器的全球份额约为33%,超越IE的32%全球居首.

关于IE、火狐等浏览器兼容问题的总结

- - 博客园_首页
   今天整理系统,发现系统很多页面,只有在IE6下显示正常,其它的都不正常,很是奇怪. 所以上网找了一些关于浏览器兼容的问题和解决办法,在此我觉得大牛们总结的比较精彩,分享给网友们. 以下两种方法几乎能解决现今所有兼容.. 1, !important (不是很推荐,用下面的一种感觉最安全). 随着IE7对!important的支持, !important 方法现在只针对IE6的兼容.(注意写法.记得该声明位置需要提前.).

IE 浏览器安全级别详情及区别

- - 大魔 I'm Png
排查问题时,定位到可能和当前浏览器的安全级别设置有关,顺便整理了下Windows 7下IE9安全级别的详情内容,及各安全级别下的默认设置差异. Windows 7下IE9安全级别设置项如下表示. (留空代表同前一列的值,无变化). .NET Framework 相关组件. 运行未用 Authenticode 签名的组件.

如何在IE浏览器里模仿DomContentLoaded

- - IE浏览器中文网站
稍微了解一点框架的事件绑定的都知道 window.onload 事件需要在页面所有内容(包括图片、flash、iframe等)加载完后,才执行,但往往我们更希望在 DOM 一加载完就执行脚本,而各大框架都提供了这样的方法,今天就讨论下其中的原理. 标准浏览器都提供了一个DomContentLoaded事件来实现,我们只需要注册相应的事件就可以了,而在IE浏览器里则需要模仿实现.