AngularJS对IE8的兼容

前端之家收集整理的这篇文章主要介绍了AngularJS对IE8的兼容前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

对于前端而言,现在很多框架组件都不再支持IE8,然而拗不过需求,却总有很多时候必须要支持IE8。AngularJS作为一个比较好用的前端MVC框架,能有效地提高我们的开发效率。然而随着版本的更新,AngularJS不再支持IE8,这时候就有人开始捣鼓IE8兼容了,比如这个

下面来简单讲一下用法

1、html的title中加入如下Meta:

<Metahttp-equiv="X-UA-Compatible"content="IE=edge"/>


2、引入js:

<!--[ifIE8]>
<scriptsrc="//cdnjs.cloudflare.com/ajax/libs/es5-shim/4.0.5/es5-shim.min.js"></script>
<scriptsrc="//code.jquery.com/jquery-1.11.1.min.js"></script>
<style>
.ng-hide{
display:none!important;
}
</style>
<![endif]-->
<scriptsrc="angular.js"></script>


这个ie8的兼容版解决了很多AngularJS在IE8中的兼容问题,但是在IE8下的兼容依然会存在一些问题,比如文字图标在IE8中使用的时候会存在需要反流才能显示的情况,很多基于AngularJS的组件在IE8下的异常等等。


3、自定义指令

比如自定义指令如下:

varapp=angular.module('myApp',[]);
app.directive('mytable',[function(){
return{
//scope:false,//默认值,共享父级作用域
//controller:function($scope,$element,$attrs,$transclude){},restrict:'AE',//E=Element,A=Attribute,C=Class,M=Comment
template:"test"
};
}])

该指令在ie中需要注意的是:

(1)指令名全小写

(2)html声明标签时不能直接用<mytable></mytable>,而必须是<div mytable></div>

猜你在找的Angularjs相关文章