Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Webshims Lib is a modular capability-based polyfill-loading library
JavaScript Other

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
build
demos
src
swfs
tests
.gitignore
MIT-LICENSE.txt
build.xml
readme.md

readme.md

Webshims Lib - The polyfilling, capability based loading JavaScript Library

Features

General Principles:

  • HTML5 compliant: correctly and accurately implemented (HTML5) Markup-, JS- and DOM-APIs
  • capability based loading: extremely lightweight in modern browsers
  • cross-browser support: All A-Graded browsers including latest version of Opera are tested
  • extendable: if we have not implemented a feature you want, you can easily implement it on your own

Implemented Features:

  • HTML5 shiv and innerShiv solution including basic CSS-support
  • canvas
  • HTML5 form features including: constraint validation and form widgets (input[range], input[date], input[time], input[datetime-local], output, input[list]/datalist)
  • HTML5 audio/video implementation
  • interactive elements: summary/details
  • JSON (stringify and parse)
  • localStorage/sessionStorage
  • geolocation
  • ECMAScript 5 / JavaScript 1.8.5 features

How To Use


<script src="js/jquery.js"></script>
<script src="js/Modernizr-yepnope.js"></script> 
<script src="js-webshim/minified/polyfiller.js"></script> 

<script> 
    //load and implement all unsupported features 
    $.webshims.polyfill();

    //or only load a specific feature
    //$.webshims.polyfill('geolocation json-storage');
</script>

  • Wait till everything has been loaded and then use it:

<script> 
    $(function(){
        //work with JSON and localStorage 
        var userData = JSON.parse(localStorage.getItem('userData')) || {visits: 0};
        $('#visits').html(userData.visits);
        //...
    });
</script>

More information and demos here.

License

The Webshims Lib core is licensed under the MIT-License. Note: Webshims Lib uses many great third party scripts.

Questions?

If you have any questions, please feel free to ask them on the Using jQuery Plugins forum.

Please tag your questions with 'webshims' or 'polyfill'.

Release 1.8.5

  • much improved bug detection for buggy interactive constraint validation (no more assumptions)
  • new custom event changedvaliditystate for forms feature
  • improved overlay placement (errormessage/datalist)

Release 1.8.4

  • improved network performance
  • polyfiller supports AMD + async pre-configuration
  • Opera bugfix

Release 1.8.3

  • chrome/webkit fixes
  • full compatibility with jQuery 1.7
  • added locales for errormessages (If you want to improve existing messages or add some errormessages, please send me a pull request or file an issue)
  • improved progress event for older Safari mobile and Firefox

Release 1.8.2

  • improved mediaelement (canplaythrough event, http live streaming for iOS)
  • moved input[list]/datalist support from 'forms' to 'forms-ext' feature (more lightweight for Chrome/Safari)
  • improved styleability of errorbubble
  • compatibility with jQuery 1.7 (1.8.1 is not compatible with jQuery 1.7)

Release 1.8.1

  • improved mediaelement loading
  • fixed small bugs in mediaelement polyfill
  • prepare for jQuery 1.7 compatibility
  • fixed demos

Release 1.8.0

  • first mediaelement implementation (audio/video)
  • implemented form submitter attributes (formaction, formtarget, formenctype)
  • better language support
  • updated es5-shim
  • updated jQuery UI path
  • fixed label for output element
Something went wrong with that request. Please try again.