bugfix: don't call determinePath() on embedded stylesheets
v1.2.6.5 (2010-08-12)
reorganized XHR stuff
adjusted eCSStender::isSupported() (property version) to avoid using expando-related checks (in preparation for IE9)
beefed-up internal zero_out() function
stripped out addition of Array.push() for browsers that didn't support it (it was unnecessary)
v1.2.6.4 (2010-08-04)
swapped decrement side in clearBrowserCache()
v1.2.6.3 (2010-08-04)
minor bug fix for determinePath() on imported stylesheets
fix to miskey in clearBrowserCache()
v1.2.6.2 (2010-07-30)
bug fix for IE error: "'ownerNode' is null or not an object"
tweaks to the caching setup:
revised clearBrowserCache() for IE userData and localStorage
prefixed all cached items in localStorage with "eCSStender-" so we can remove them individually
caching the eCSStender version number
adjusted the cache-reading mechanism to check against current eCSStender version number before reading. If version numbers don't match, it doesn't read the cache, it only wipes it.
clearing local storage once it's read (this should help with memory-related issues).
v1.2.6.1 (2010-07-20)
Added ability for extensions to dynamically redefine themselves
Cleaned up some leaky variables (thanks to EmissionsTest.js)
accept a property as the second argument and a string value (or array of strings) as the third argument for property tests (so that you can offer alternatives like ['#000000','black'] or re-ordering for browsers that have alternate internal value storage schemes)
Adjusted the innards of eCSStender in hopes of reducing how often it blocks in the browser
v1.1.3 (2010-04-04)
Fixing a bug in IE's caching mechanism
v1.1.2 (2009-11-30)
Fixing the bug in IE8 introduced a bug in IE6 (different means of handling paths apparently)
added check for __no_cache to stop verifyCache()
added eCSStender::disableCache() call to the test page and examples (to keep the cache from interfering with results)
This build and examples have been tested in IE6-8, Firefox 1.5-3.5, Safari 3+ (and Webkit nightly), Chrome, Opera, and Shiira.
v1.1.1 (2009-11-29)
Updating the examples to explicitly state what browsers should be supported in each
Fixed an issue with determinePath() in IE8 (IE seems to assume imported CSS files should have an href = the path to the page + the filename, even if the file doing the importing is in a different folder)
v1.1 (2009-11-24)
Added support for delayed writing (to reduce DOM manipulation time) - optional boolean third param on eCSStender::embedCSS() and eCSStender::newStyleElement() now allow delayed writing to the document (true by default, use false to disable)
Added support for custom @-rules
Added the tests for extended @-rules
Adjusted extract to work with old IE versions and their horribly disfiguring of embedded CSS (fixes Greg Lucas' bug)
Double-checked the examples for functionality under delayed-write
overhauled the caching mechanisms to be faster and more broad
added new public method eCSStender::ignore() which accepts a string filename or array of string filenames to ignore when parsing stylesheets (allows speeding up by excluding simple stylesheets)
added public method eCSStender::onComplete() which accepts functions to be run when eCSStender finishes its work (for extensions that require access to everything after the fact)
opened up selector-based lookups to finding by Function, either as a single or in an array
added a new method (eCSStender::lookup()) to enable extension to re-query the CSS to extract additional information form the stylesheet. It takes arguments similar to those of eCSStender::register and returns an array of matches with a full complement of details. See the source for more information
continued implementing the CSS3 selectors module, including a fix for IE6's issues with compound class selectors and a re-factoring of the :nth-child extension to allow for some browsers' failure to comprehend whitespace not to require inline style additions.
added/updated test cases
v0.9 (2009-06-05)
overhaul of internal eCSStend method to speed it up
opened up selector-based lookups to finding by RegExp
adjusted eCSStender::register() to accept an array of selector lookups, each item of which can be a selector string (including compound selector strings) or RegExp.
began work on implementing CSS3 modular extensions (./extensions/css3-modules), starting with selectors (./extensions/css3-modules/selectors) which leverage Sizzle
v0.8.1 (2009-06-04)
implemented __support_cache for speeding up repeated calls to isSupported()
added support for eCSStender to maintain CSS filter functions in eCSStender.filters (for Microsoft filter support); public method eCSStender::setFilter() will set or override eCSStender's maintained list of filters
adjusted the findImportedStyleSheets() method to better support IE6
extracted the code to add a new stylesheet to the stack into a new private method: addStyleSheet()
added a private path determination method to cut down on issues with regard to capturing nested stylesheets: determinePath()
added support for lookups by an array of properties
added support for filtering the results of a lookup by property or property value; new private method filtersMatched() and an example implemented in the transform test (see below)
adjusted the handling of the __xhr property to better deal with IE6
added a private method called zero_out() to assist in auto-converting all instances of "0px" to "0" in properties (to ensure consistency when comparing native storage or properties)
updated ./tests/css/screen.css to make use of Comfortaa
tweaked ./tests/font-face.html and ./tests/page.html to use setTimeout() instead of using jQuery's fadeTo() for the delay to keep IE6 from mangling the fonts
v0.6.1 (2009-04-19)
minor bug fix to @media support
updated object and docs to appropriate version (still had it as 0.5)
v0.6 (2009-04-19)
added support for @media groups
added support for and exposure of @font-face (as eCSStender.fonts)