Coder Social home page Coder Social logo

angular.js-ie8-builds's Introduction

AngularJS 1.3 / 1.4 IE8 builds

AngularJS 1.3 / 1.4 does not work with IE8. With these custom builds you get good IE8 support. I can't guarantee that everything will work but anything I've tried works fine.

What you need

  • es5-shim
  • jQuery 1.*
  • AngularJS 1.4.* build from this repo (some poly-fills are baked in and minor fixes to enable IE8 support)

Example

<!DOCTYPE html>
<html>
<head>
	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
	<meta charset="utf-8" />
	<title>Angular 1.4 IE8</title>
	<!--[if IE 8]>
		<script src="//cdnjs.cloudflare.com/ajax/libs/es5-shim/4.0.5/es5-shim.min.js"></script>
		<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
		<style>
			.ng-hide {
				display: none !important;
			}
		</style>
	<![endif]-->
	<script src="angular.js"></script>
</head>
<body ng-app="someApp">

</body>
</html>

npm & bower

npm
npm install angularjs-ie8-build
bower
bower install angularjs-ie8-build

// bower install with local name "angular"
bower install angular=angularjs-ie8-build

Careful now

When using $q promise methods catch or finally in IE8 use bracket notation instead of dot notation. Same goes for $http delete method. IE8 does not like dot notation with these reserved words.

// no
promise.catch(function(){});

// yes
promise['catch'](function(){});

Other stuff

  • Use attributes for directives, e.g. <div ng-view> instead of custom element <ng-view>
  • If you want to use custom elements, you need to make IE8 aware of them first, e.g. document.createElement('ng-view');
  • Use ng-style instead of style="{{ someCss }}"
  • Check any additional angular or third party modules you are using for reserved words described above. If you find any, use a search and replace to change from dot notation to bracket notation

Source

The source is maintained here:
https://github.com/fergaldoyle/angular.js/tree/ie8-compat
https://github.com/fergaldoyle/angular.js/tree/ie8-compat-1.4

angular.js-ie8-builds's People

Contributors

fergaldoyle avatar markrbm avatar legend80s avatar

Watchers

James Cloos avatar 次瓜 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.