Ticket #5062 (closed bug: wontfix)
SlideUp in IE7 quirks mode flickers
| Reported by: | Siderite | Owned by: | |
|---|---|---|---|
| Priority: | major | Milestone: | 1.4 |
| Component: | effects | Version: | 1.3.2 |
| Keywords: | slide ie7 quirks flicker | Cc: | |
| Blocking: | Blocked by: |
Description
The slideUp effect animates an element from its height to 0px then hides it. Because of a quirks mode rendering issue, when setting height to 0px the div briefly returns to the original size creating a flicker.
The solution I found: replace target.slideUp(speed,callBack) with
var h = target.height(); target.animate(
{ height: '1px' }, speed, function() {
target.hide(); target.height(h); callBack();
}
);
I think this can be implemented directly in the jQuery engine with no side effects.
Change History
comment:2 Changed 23 months ago by lysrin@…
I just wanted to comment on this. I am still having this issue using jQuery 1.6.1, and I am creating sites on an intranet, without access to the Internet. I tried changing the doctype, but that did not remedy the problem for me. However overriding the jQuery hide to use a height of 1 rather than 0, as suggested on Siderite's blog, works for me on IE7, IE8, and FF4. Why wouldn't this change get into jQuery?
Please follow the bug reporting guidlines and use jsFiddle when providing test cases and demonstrations instead of pasting the code in the ticket.

Or you can just made sure that your document isn't in quirksmode (provide a proper doctype) - which is what we typically recommend when encountering this issue.