IE 6 has not been updated since 2001, with minor changes in 2004 with the release of the Service Pack 2. So we're talking about a really obsolete browser here. As such, IE 6 has a wide variety of problems with jQuery that I'd like to discuss here.
Animations and effects
Simple animations work fine in IE 6, though you might notice a general poor performance in their execution. On the contrary, complex animations are buggy for the major part. There are two main problems here:
For the first point, you should never give to IE 6 values greater than 1000 milliseconds, because such values can actually crash the browser, especially when the animations are nested. A typical scenario is when you have nested animations on document loading.
As a rule of thumb, shorthand AJAX methods (such as
post()) should be used carefully with IE 6. Instead, you should always use the
$.ajax() wrapper, because it gives you a full control over the AJAX request.
Dynamic CSS styles
IE 6 is affected by the hasLayout property in its CSS support. Simply put, when you apply a dynamic CSS style, the final effect might be buggy. Another problem is related to cascading and inheritance. IE 6 has many problems with specificity, especially when applied to style rules given through multiple CSS classes. A simple way to fix this problem is to use the
!important statement combined with redundant descendant selectors.