Moved unload abort code so that the event is only bound if the xhr transport is used...
[jquery.git] / src / support.js
index 85deb1b..e4c3ea9 100644 (file)
@@ -61,6 +61,7 @@
                optSelected: opt.selected,
 
                // Will be defined later
+               deleteExpando: true,
                optDisabled: false,
                checkClone: false,
                scriptEval: false,
                delete window[ id ];
        }
 
+       // Test to see if it's possible to delete an expando from an element
+       // Fails in Internet Explorer
+       try {
+               delete script.test;
+
+       } catch(e) {
+               jQuery.support.deleteExpando = false;
+       }
+
        root.removeChild( script );
 
        if ( div.attachEvent && div.fireEvent ) {
                document.body.appendChild( div );
                jQuery.boxModel = jQuery.support.boxModel = div.offsetWidth === 2;
 
-               if ( 'zoom' in div.style ) {
+               if ( "zoom" in div.style ) {
                        // Check if natively block-level elements act like inline-block
                        // elements when setting their display to 'inline' and giving
                        // them layout
                        // (IE < 8 does this)
-                       div.style.display = 'inline';
+                       div.style.display = "inline";
                        div.style.zoom = 1;
                        jQuery.support.inlineBlockNeedsLayout = div.offsetWidth === 2;
 
                        // Check if elements with layout shrink-wrap their children
                        // (IE 6 does this)
-                       div.style.display = '';
-                       div.innerHTML = '<div style="width:4px;"></div>';
+                       div.style.display = "";
+                       div.innerHTML = "<div style='width:4px;'></div>";
                        jQuery.support.shrinkWrapBlocks = div.offsetWidth !== 2;
                }
 
-               div.innerHTML = '<table><tr><td style="padding:0;display:none"></td><td>t</td></tr></table>';
-               var tds = div.getElementsByTagName('td');
+               div.innerHTML = "<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>";
+               var tds = div.getElementsByTagName("td");
 
                // Check if table cells still have offsetWidth/Height when they are set
                // to display:none and there are still other visible table cells in a
                // (only IE 8 fails this test)
                jQuery.support.reliableHiddenOffsets = tds[0].offsetHeight === 0;
 
-               tds[0].style.display = '';
-               tds[1].style.display = 'none';
+               tds[0].style.display = "";
+               tds[1].style.display = "none";
 
                // Check if empty table cells still have offsetWidth/Height
                // (IE < 8 fail this test)
                jQuery.support.reliableHiddenOffsets = jQuery.support.reliableHiddenOffsets && tds[0].offsetHeight === 0;
-               div.innerHTML = '';
+               div.innerHTML = "";
 
-               document.body.removeChild( div ).style.display = 'none';
+               document.body.removeChild( div ).style.display = "none";
                div = tds = null;
        });
 
        // release memory in IE
        root = script = div = all = a = null;
 })();
-
-jQuery.props = {
-       "for": "htmlFor",
-       "class": "className",
-       readonly: "readOnly",
-       maxlength: "maxLength",
-       cellspacing: "cellSpacing",
-       rowspan: "rowSpan",
-       colspan: "colSpan",
-       tabindex: "tabIndex",
-       usemap: "useMap",
-       frameborder: "frameBorder"
-};
-
 })( jQuery );