diff options
Diffstat (limited to 'src/manipulation.js')
-rw-r--r-- | src/manipulation.js | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/manipulation.js b/src/manipulation.js index 3cfc97c3b..457975a59 100644 --- a/src/manipulation.js +++ b/src/manipulation.js @@ -585,11 +585,17 @@ jQuery.extend({ var srcElements, destElements, i, - clone; + clone, + fix8908; if ( jQuery.support.html5Clone || jQuery.isXMLDoc(elem) || !rnoshimcache.test( "<" + elem.nodeName + ">" ) ) { - clone = elem.cloneNode( true ); + // Fixes #8909 - By accessing one of the cloned element's computed styles it breaks the + // connection with the source element's styles in IE9/10 + if ( elem.nodeType === 1 && window.getComputedStyle ) { + fix8908 = ( window.getComputedStyle( elem, null ) || {} ).backgroundImage; + } + clone = elem.cloneNode( true ); // IE<=8 does not properly clone detached, unknown element nodes } else { fragmentDiv.innerHTML = elem.outerHTML; |