#9370 closed bug (fixed)
Compatibility Issue with jQuery 1.6 and IE6
Reported by: | Owned by: | Timmy Willison | |
---|---|---|---|
Priority: | high | Milestone: | 1.6.2 |
Component: | manipulation | Version: | 1.6.1 |
Keywords: | xml | Cc: | |
Blocked by: | Blocking: |
Description (last modified by )
A compatibility issue has arisen with jquery 1.6 (and 1.6.1) and IE6. The failure does not occur with any version of jquery 1.5. A link to jsfiddle sample code that demonstrates the issue follows:
It is suggested that the link be run first on Firefox in which the sample code runs properly. Then use the same link with IE6. An alert box will appear indicating the point in the code that is failing. Note that the failure occurs with the append() method.
Change History (15)
comment:1 Changed 12 years ago by
Owner: | set to sradoff@… |
---|---|
Status: | new → pending |
comment:2 Changed 12 years ago by
Status: | pending → new |
---|
I just tested the jsfiddle code and I can reproduce the failure. I could send you the alert I get if only I knew how to embed a jpg into this response.
This appears to be a real failure that I can reproduce with jsfiddle and my application code.
As for making the test code smaller the problem is that I rely upon generating XML and find that jquery tends to be weak in that area. So the functions you see are for the purpose of generating XML and utilize standard DHTML methods.
comment:3 Changed 12 years ago by
Below are additional pieces of information.
The place where the failure takes place with IE6 is on the line with code:
$(oData).append(oDems);
The error is: Wrong number of arguments or invalid property assignment.
I tested with various versions of MSXML (3 and 6) and the error still occurs. My O/S is WinXP, SP3.
comment:4 Changed 12 years ago by
Component: | unfiled → manipulation |
---|---|
Keywords: | xml added |
Priority: | undecided → low |
Status: | new → open |
I've looked into this, but didn't discover what is causing the error.
comment:5 Changed 12 years ago by
The problem is in the findInputs method, which is new in jQuery 1.6. Accessing elem.getElementsByTagName causes the error. If I use typeof elem.getElementsByTagName == "function" instead it works. But the type returned is "unknown". I encounter this problem in the IE7 compatibility mode in IE9.
comment:6 Changed 12 years ago by
Owner: | changed from sradoff@… to Timmy Willison |
---|---|
Status: | open → assigned |
that makes sense.
comment:7 Changed 12 years ago by
Milestone: | 1.next → 1.6.2 |
---|---|
Priority: | low → high |
comment:8 Changed 12 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
elem.getElementsByTagName calls the function in IE6/7. Fixes #9370.
Changeset: 1d1cb582c0f744afaa51a63d374b9ffe0f58d1db
comment:9 Changed 12 years ago by
Description: | modified (diff) |
---|
@timmywil can you add a test for this?
Just ran on Chrome then in IE6... there was no alert(). Is there anyway to reduce this test case down to the single item that is causing the issue?