Adding some fixes for commit [6537]. If there's leading whitespace, or if an exception is thrown by innerHTML, we need to use the old style method.
This commit is contained in:
parent
cf8c1249d1
commit
fc4c691534
|
@ -189,15 +189,21 @@ jQuery.fn.extend({
|
||||||
|
|
||||||
// See if we can take a shortcut and just use innerHTML
|
// See if we can take a shortcut and just use innerHTML
|
||||||
} else if ( typeof value === "string" && !/<script/i.test( value ) &&
|
} else if ( typeof value === "string" && !/<script/i.test( value ) &&
|
||||||
this[0] && !jQuery.isXMLDoc( this[0] ) &&
|
(!jQuery.support.leadingWhitespace || !rleadingWhitespace.test( value )) &&
|
||||||
!wrapMap[ (rtagName.exec( value ) || ["", ""])[1].toLowerCase() ] ) {
|
!wrapMap[ (rtagName.exec( value ) || ["", ""])[1].toLowerCase() ] ) {
|
||||||
|
|
||||||
for ( var i = 0, l = this.length; i < l; i++ ) {
|
try {
|
||||||
// Remove element nodes and prevent memory leaks
|
for ( var i = 0, l = this.length; i < l; i++ ) {
|
||||||
if ( this[i].nodeType === 1 ) {
|
// Remove element nodes and prevent memory leaks
|
||||||
cleanData( this[i].getElementsByTagName("*") );
|
if ( this[i].nodeType === 1 ) {
|
||||||
this[i].innerHTML = value;
|
cleanData( this[i].getElementsByTagName("*") );
|
||||||
|
this[i].innerHTML = value;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// If using innerHTML throws an exception, use the fallback method
|
||||||
|
} catch(e) {
|
||||||
|
this.empty().append( value );
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in a new issue