Opened 12 years ago

Closed 11 years ago

Last modified 11 years ago

#4125 closed enhancement (fixed)

change dojo.removeClass to check whether action is required

Reported by: guest Owned by: Becky Gibson
Priority: lowest Milestone:
Component: Accessibility Version: 0.9
Keywords: Cc:
Blocked By: Blocking:


I noticed that some scrollbars in Internet Exploror 7 showed a glitch every couple of seconds. This seems to be caused by dijit.wai.check() which calls dojo.removeClass(dojo.body(), "dijit_a11y") every 4 seconds (or addClass of course). Is it possible to change the function dojo.removeClass() so the class is only changed when this is required?

Change History (7)

comment:1 Changed 12 years ago by Adam Peller

Component: GeneralAccessibility
Owner: changed from anonymous to Becky Gibson

comment:2 Changed 12 years ago by Eugene Lazutkin

(In [10165]) dojo.removeClass() changes the className only if it is different after removal. Refs #4125.

comment:3 Changed 12 years ago by Eugene Lazutkin

I modified dojo.removeClass() as requested. But is it really a good idea to call it every 4 seconds? Please review, if it is necessary.

comment:4 Changed 12 years ago by bill

Hi, I added that code mainly to help in testing so you don't have to refresh the page in IE. Could be removed although it isn't harming anything now ... I don't think it matters much either way.

Glad the auther of this ticket caught the scrollbar problem though.

comment:5 Changed 12 years ago by Becky Gibson

I think we can remove this check as it still requires a manual refresh after leaving high contrast mode. In IE the backgroundImage is still reported as "none" even after switching out of high contrast mode. Thus, the needsA11y variable remains set to true and the dijit_a11y class is not removed. Most users will not be switching into/out of high contrast mode (and the setInterval is only set for IE) so we can remove the check. There may be a way we can get the high contrast mode check to work in IE so this could be addressed in 1.1 or later.

comment:6 Changed 11 years ago by Becky Gibson

Resolution: fixed
Status: newclosed

fixed with [12048] which also fixed #5514. A11y checking is only performed once and no longer in a timer loop.

comment:7 Changed 11 years ago by Becky Gibson

(In [12407]) refs #4125 removed comment about a11y checking code being run on a timer as it is now only called once onload

Note: See TracTickets for help on using tickets.