63 lines
1.7 KiB
JavaScript
63 lines
1.7 KiB
JavaScript
define( [
|
|
"./core",
|
|
"./var/support",
|
|
"./var/document",
|
|
"./core/init", // Needed for hasOwn support test
|
|
// This is listed as a dependency for build order, but it's still optional in builds
|
|
"./core/ready"
|
|
], function( jQuery, support, document ) {
|
|
|
|
// Support: IE<9
|
|
// Iteration over object's inherited properties before its own
|
|
var i;
|
|
for ( i in jQuery( support ) ) {
|
|
break;
|
|
}
|
|
support.ownFirst = i === "0";
|
|
|
|
// Note: most support tests are defined in their respective modules.
|
|
// false until the test is run
|
|
support.inlineBlockNeedsLayout = false;
|
|
|
|
// Execute ASAP in case we need to set body.style.zoom
|
|
jQuery( function() {
|
|
|
|
// Minified: var a,b,c,d
|
|
var val, div, body, container;
|
|
|
|
body = document.getElementsByTagName( "body" )[ 0 ];
|
|
if ( !body || !body.style ) {
|
|
|
|
// Return for frameset docs that don't have a body
|
|
return;
|
|
}
|
|
|
|
// Setup
|
|
div = document.createElement( "div" );
|
|
container = document.createElement( "div" );
|
|
container.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px";
|
|
body.appendChild( container ).appendChild( div );
|
|
|
|
if ( typeof div.style.zoom !== "undefined" ) {
|
|
|
|
// Support: IE<8
|
|
// Check if natively block-level elements act like inline-block
|
|
// elements when setting their display to 'inline' and giving
|
|
// them layout
|
|
div.style.cssText = "display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1";
|
|
|
|
support.inlineBlockNeedsLayout = val = div.offsetWidth === 3;
|
|
if ( val ) {
|
|
|
|
// Prevent IE 6 from affecting layout for positioned elements #11048
|
|
// Prevent IE from shrinking the body in IE 7 mode #12869
|
|
// Support: IE<8
|
|
body.style.zoom = 1;
|
|
}
|
|
}
|
|
|
|
body.removeChild( container );
|
|
} );
|
|
|
|
return support;
|
|
} );
|