- div = jQuery("<div/>").data({ a: true, b: true });
- div = div.clone(true);
- equals( div.data("a"), true, "Data cloned." );
- equals( div.data("b"), true, "Data cloned." );
+ // and here's a valid one.
+ div = jQuery("<div/>").html('<object height="355" width="425" type="application/x-shockwave-flash" data="http://www.youtube.com/v/3KANI2dpXLw&hl=en"> <param name="movie" value="http://www.youtube.com/v/3KANI2dpXLw&hl=en"> <param name="wmode" value="transparent"> </object>');
+
+ clone = div.clone(true);
+ equals( clone.length, 1, "One element cloned" );
+ equals( clone.html(), div.html(), "Element contents cloned" );
+ equals( clone[0].nodeName.toUpperCase(), "DIV", "DIV element cloned" );
+
+ div = jQuery("<div/>").data({
+ a: true, b: true,
+ c: { nesty: ["Block", "Head"] }
+ });
+ var div2 = div.clone(true);
+ equals( div2.data("a"), true, "Data cloned." );
+ equals( div2.data("b"), true, "Data cloned." );
+ var c = div2.data("c");
+ c.nesty[0] = "Fish";
+ equals( div.data("c").nesty[0], "Block", "Ensure cloned element data is deep copied (Bug #7717)" );