Search and Top Navigation
#4056 closed bug (worksforme)
Opened February 04, 2009 03:39AM UTC
Closed July 09, 2009 03:34AM UTC
Last modified May 26, 2010 05:38PM UTC
jQuery UI Effects - Color Animation
Reported by: | itjam | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | 1.8 |
Component: | ui.effects.* (individual effect) | Version: | 1.5.2 |
Keywords: | color, animation, highlight, effect | Cc: | |
Blocked by: | Blocking: |
Description
If a highlight effect happens to an hidden panel, an exception is thrown when trying to return to its original color.
Firefox/jQuery Effect library loses information about the hidden panel. When an AJAX update happens, it does the “yellow” highlighting effect, but does not know how to return to its initial background color.
It throws an exception so all JS events failed.
It fails on this line:
fx.end is undefined.
// We override the animation for all of these color styles
1370jQuery.each(['backgroundColor', 'borderBottomColor', 'borderLeftColor', 'borderRightColor', 'borderTopColor', 'color', 'outlineColor'], function(i,attr){
1371 jQuery.fx.step[attr] = function(fx){
1372 if ( fx.state == 0 ) {
1373 fx.start = getColor( fx.elem, attr );
1374 fx.end = getRGB( fx.end );
1375 }
1376
1377 fx.elem.style[attr] = "rgb(" + [
1378 Math.max(Math.min( parseInt((fx.pos * (fx.end[0] - fx.start[0])) + fx.start[0]), 255), 0),
1379 Math.max(Math.min( parseInt((fx.pos * (fx.end[1] - fx.start[1])) + fx.start[1]), 255), 0),
1380 Math.max(Math.min( parseInt((fx.pos * (fx.end[2] - fx.start[2])) + fx.start[2]), 255), 0)
1381 ].join(",") + ")";
1382 }
1383});
Attachments (0)
Change History (3)
Changed February 07, 2009 01:41AM UTC by comment:1
milestone: | TBD → 1.6 |
---|
Changed March 08, 2009 02:44PM UTC by comment:2
milestone: | 1.7 → 1.8 |
---|
Changed July 09, 2009 03:34AM UTC by comment:3
resolution: | → worksforme |
---|---|
status: | new → closed |
Works for me, tested in trunk and 1.6, but not 1.5.2 (the tag doesn't have proper MIME types and I don't feel look doing a checkout since it works now).