git.asbjorn.biz
/
jquery.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix for bug #1549, where the DOM conversion of <code/> and similar elements would...
[jquery.git]
/
src
/
jquery
/
jquery.js
diff --git
a/src/jquery/jquery.js
b/src/jquery/jquery.js
index
4f3e03e
..
038323a
100644
(file)
--- a/
src/jquery/jquery.js
+++ b/
src/jquery/jquery.js
@@
-633,6
+633,11
@@
jQuery.extend({
// Convert html string into DOM nodes
if ( typeof arg == "string" ) {
// Convert html string into DOM nodes
if ( typeof arg == "string" ) {
+ // Fix "XHTML"-style tags in all browsers
+ arg = arg.replace(/(<(\w+)[^>]*?)\/>/g, function(m, all, tag){
+ return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area)$/i)? m : all+"></"+tag+">";
+ });
+
// Trim whitespace, otherwise indexOf won't work as expected
var s = jQuery.trim(arg).toLowerCase(), div = doc.createElement("div"), tb = [];
// Trim whitespace, otherwise indexOf won't work as expected
var s = jQuery.trim(arg).toLowerCase(), div = doc.createElement("div"), tb = [];
@@
-728,9
+733,15
@@
jQuery.extend({
// IE elem.getAttribute passes even for style
else if ( elem.tagName ) {
// IE elem.getAttribute passes even for style
else if ( elem.tagName ) {
- if ( value != undefined ) elem.setAttribute( name, value );
+ if ( value != undefined ) {
+ if ( name == "type" && jQuery.nodeName(elem,"input") && elem.parentNode )
+ throw "type property can't be changed";
+ elem.setAttribute( name, value );
+ }
+
if ( jQuery.browser.msie && /href|src/.test(name) && !jQuery.isXMLDoc(elem) )
return elem.getAttribute( name, 2 );
if ( jQuery.browser.msie && /href|src/.test(name) && !jQuery.isXMLDoc(elem) )
return elem.getAttribute( name, 2 );
+
return elem.getAttribute( name );
// elem is actually elem.style ... set the style
return elem.getAttribute( name );
// elem is actually elem.style ... set the style