Polyfills

Definition

A polyfill is JavaScript code that emulates a native feature for older browsers. For example, IE 7 doesn’t understand the new HTML5 tags such as <nav> or <section>. By using a polyfill, you can use those newer features in IE 7.

If you really want to understand them, write your own polyfill; JavaScript Playground has a tutorial on doing just that.

List of Polyfills

A good list of current polyfills is maintained on Github by Modernizr. HTML5 Please also maintains a list and has helpful information about each use.

The ones I tend to use the most are:

How to Use a Polyfill

A typical pattern is to call Modernizr, and then dynamically load polyfills if they are required by the current browser. I have another page that talks more about Modernizr.

Feature Support

Shows a table of which browser supports which feature.

http://caniuse.com/

http://html5please.com/

More Information