Bug Tracker

Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#10236 closed bug (duplicate)

Regression in jQuery 1.6.3: not working with XHTML documents because of inserting non-wellformed XML

Reported by: anonymous Owned by:
Priority: blocker Milestone: 1.6.4
Component: support Version: 1.6.3
Keywords: Cc:
Blocked by: Blocking:

Description

jQuery 1.6.3 inserts non-wellformed XML so that it produces error messages in browsers, leaving "jQuery" and "$" undefined. This does not happen with jQuery 1.6.2.

The problem where jQuery.support is defined, at line 1182:

// Preliminary tests
	div.setAttribute("className", "t");
	div.innerHTML = "   <link><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type=checkbox>";

This is not well-formed XML because <input type=checkbox> misses quotes. It should be <input type="checkbox"> or <input type='checkbox'>.

The problem does not occur with jQuery 1.6.2 because there it reads: <input type='checkbox'/> which is well-formed XML.

Because of this, jQuery 1.6.3 can't be used in XHTML ("application/xhtml+xml") documents. This is what Firefox shows after I updated jQuery to 1.6.3: http://i56.tinypic.com/abjxo0.png

Change History (4)

comment:1 Changed 8 years ago by Rick Waldron

Component: unfiledsupport
Milestone: None1.6.4
Priority: undecidedblocker
Resolution: duplicate
Status: newclosed

comment:2 Changed 8 years ago by Rick Waldron

Duplicate of #10197.

comment:3 Changed 8 years ago by Herbalite

When inserting the quotes as suggested above the next non XML conform issue is that neither the link, nor the input tag in that line is terminated.

When the line 1182 looks like the follwing jQuery appears to be working again.

div.innerHTML = " <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>";

comment:4 Changed 8 years ago by Rick Waldron

Closed as duplicate. This issue has already been _fixed_

Note: See TracTickets for help on using tickets.