Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#12254 closed defect (fixed)

IE9: dijit._editor.RichText: error in IE-specific code branch

Reported by: Kenneth G. Franqueiro Owned by:
Priority: high Milestone: 1.5.2
Component: Editor Version: 1.6.0b1
Keywords: ie9 editor Cc:
Blocked By: Blocking:

Description (last modified by Kenneth G. Franqueiro)

This is observable in themeTester. As soon as it loads, two errors occur with the message "SCRIPT5022: DOM Exception: INVALID_CHARACTER_ERR (5)". Both are traceable to dijit._editor.RichText line 746:

var tabStop = (this.tabStop = dojo.doc.createElement('<div tabIndex=-1>'));

This code is apparently relevant to #4996, and despite the fact that the string being passed to createElement doesn't seem remotely valid, it doesn't cause problems in any versions of IE previous to 9. I'm not sure whether limiting this code path to IE < 9 would introduce a regression of #4996 in IE9, nor whether revising the code to createElement('div') (which fixes the error) and setting the tabIndex separately would cause regressions in general.

Attachments (1)

12254.diff (625 bytes) - added by Kenneth G. Franqueiro 8 years ago.
Patch to use dojo.create instead of nonstandard usage of createElement; tested in IE6, 8, 9RC.

Download all attachments as: .zip

Change History (7)

comment:1 Changed 8 years ago by Kenneth G. Franqueiro

Description: modified (diff)

comment:2 Changed 8 years ago by Kenneth G. Franqueiro

Description: modified (diff)

comment:3 Changed 8 years ago by bill

Although the [12842] commit didn't include test cases, they were later added to Editor_a11y.html, the ""tabbing"" section of that test file. So it should be easy to test that tabbing is working after changing the condition from dojo.isIE to dojo.isIE < 9, or even dojo.isIE < 8.

Changed 8 years ago by Kenneth G. Franqueiro

Attachment: 12254.diff added

Patch to use dojo.create instead of nonstandard usage of createElement; tested in IE6, 8, 9RC.

comment:4 Changed 8 years ago by Kenneth G. Franqueiro

Resolution: fixed
Status: newclosed

(In [23744]) Rewrite IE workaround to use dojo.create instead of non-standard usage of createElement (which breaks in IE9). Fixes #12254, refs #4996. !strict

comment:5 Changed 8 years ago by bill

Milestone: tbd1.6

bulk update: bugs fixed in past few months, presumably milestone is 1.6

comment:9 Changed 8 years ago by Kenneth G. Franqueiro

Milestone: 1.61.5.2

Updating milestone to 1.5.2 to reflect inclusion in changeset [26956] for ticket #14199.

Note: See TracTickets for help on using tickets.