Bug Tracker

Opened 13 years ago

Closed 12 years ago

Last modified 8 years ago

#1014 closed bug (wontfix)

Highlight effect not working correctly in IE

Reported by: thecrumb Owned by: stefan
Priority: minor Milestone: 1.1.3
Component: interface Version: 1.1.2
Keywords: highlight Cc:
Blocked by: Blocking:

Description (last modified by scott.gonzal)

Highlight effect does not appear to work correctly in IE6/7 (WinXP).

Interface demo site:

  • Works fine in Firefox: blinks to white and the fades into green.
  • In IE: It blinks white, fades into green and then turns white again.

Change History (3)

comment:1 Changed 13 years ago by uk

i experiend this bug either. firefox works fine, msie turns white after a short period after the effect.

comment:2 Changed 13 years ago by cyberusfaust

After tinkering around with this, it appears that right after the call, the browser thinks the background-color of the element is still the same as the highlight color. Even Firefox does this, however, Firefox then sets back to the original color while IE6 hangs there... therefore I wrote my Highlight script as follows:

$(currentName).Highlight('normal','#f8e076'); if($(currentName).css('background-color') == '#f8e076') {

$(currentName).Highlight('fast', '#ffffff');

}

where #ffffff is the original base color and #f8e076 is the highlight color.

note the lowercase letters in the color definitions! IE6 rewrites the definitions to lowercase internally. Therefore, if you write:

$(currentName).Highlight('normal','#F8E076'); if($(currentName).css('background-color') == '#F8E076') {

$(currentName).Highlight('fast', '#FFFFFF');

}

IE will not register the boolean statement in the 'if' clause as true. Basically, it parses this internally to "if('#f8e076' == '#F8E076')", which is, of course, never true. Thus, I now write all my color definitions in lowercase.

As an aside, when the color is #f8e076, Firefox equates $(currentName).css('background-color') as "rgb(248, 224, 118)" but you don't need to test for this since the Highlight function works just fine on Firefox.

Furthermore, if I use color names instead of HEX values ('yellow' instead of '#FFFF00') IE6 internalizes this as "yellow" while Firefox internalizes it as "rgb(255, 255, 0)". Using color names, however does not fix the bug in IE6 though. You would still need an if clause such as: "if($(currentName).css('background-color') == 'yellow')" and then to change the background-color back to the base color by force.

comment:3 Changed 12 years ago by scott.gonzal

Description: modified (diff)
need: Review
Resolution: wontfix
Status: newclosed

Interface is no longer supported; consider switching to jQuery UI.

Note: See TracTickets for help on using tickets.