]> source.dussan.org Git - jquery.git/commitdiff
Manipulation: Use textarea for missing IE defaultValue check
authorDave Methvin <dave.methvin@gmail.com>
Wed, 22 Jan 2014 22:50:36 +0000 (14:50 -0800)
committerDave Methvin <dave.methvin@gmail.com>
Thu, 23 Jan 2014 18:04:40 +0000 (13:04 -0500)
IE11 fixed the checkbox defaultValue issue but not textarea. Rather than
creating a new detect name I'm reusing the old one to protect anyone who
is unwisely using this externally. Re-fixing the defaultValue when it
doesn't need to be done is not a problem, so leave that code for IE11.

Fixes #14716
Closes gh-1495

src/manipulation/support.js
test/unit/support.js

index 9463a01f1ecbacc1e65036ed302d37a68496a6dc..e2ba066ecdccbbf7837d5ba727b9b0299cb98395 100644 (file)
@@ -3,8 +3,7 @@ define([
 ], function( support ) {
 
 (function() {
-       var input,
-               fragment = document.createDocumentFragment(),
+       var fragment = document.createDocumentFragment(),
                div = fragment.appendChild( document.createElement( "div" ) );
 
        // #11217 - WebKit loses check when the name is after the checked attribute
@@ -14,12 +13,10 @@ define([
        // old WebKit doesn't clone checked state correctly in fragments
        support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked;
 
-       // Make sure checked status is properly cloned
-       // Support: IE9, IE10
-       input = document.createElement("input");
-       input.type = "checkbox";
-       input.checked = true;
-       support.noCloneChecked = input.cloneNode( true ).checked;
+       // Make sure textarea (and checkbox) defaultValue is properly cloned
+       // Support: IE9-IE11+
+       div.innerHTML = "<textarea>x</textarea>";
+       support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue;
 })();
 
 return support;
index efd4f820bc3e82f31eb8ee2712d26a6628c822c2..10defc5e932f173beb1773eb8cd3a3bea644e4f2 100644 (file)
@@ -92,7 +92,7 @@ testIframeWithCallback( "Check CSP (https://developer.mozilla.org/en-US/docs/Sec
                        "clearCloneStyle": false,
                        "cors": true,
                        "focusinBubbles": true,
-                       "noCloneChecked": true,
+                       "noCloneChecked": false,
                        "optDisabled": true,
                        "optSelected": false,
                        "pixelPosition": true,