Blame | Last modification | View Log | RSS feed
define(["../core","../var/support"], function( jQuery, support ) {(function() {var pixelPositionVal, boxSizingReliableVal,docElem = document.documentElement,container = document.createElement( "div" ),div = document.createElement( "div" );if ( !div.style ) {return;}// Support: IE9-11+// Style of cloned element affects source element cloned (#8908)div.style.backgroundClip = "content-box";div.cloneNode( true ).style.backgroundClip = "";support.clearCloneStyle = div.style.backgroundClip === "content-box";container.style.cssText = "border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;" +"position:absolute";container.appendChild( div );// Executing both pixelPosition & boxSizingReliable tests require only one layout// so they're executed at the same time to save the second computation.function computePixelPositionAndBoxSizingReliable() {div.style.cssText =// Support: Firefox<29, Android 2.3// Vendor-prefix box-sizing"-webkit-box-sizing:border-box;-moz-box-sizing:border-box;" +"box-sizing:border-box;display:block;margin-top:1%;top:1%;" +"border:1px;padding:1px;width:4px;position:absolute";div.innerHTML = "";docElem.appendChild( container );var divStyle = window.getComputedStyle( div, null );pixelPositionVal = divStyle.top !== "1%";boxSizingReliableVal = divStyle.width === "4px";docElem.removeChild( container );}// Support: node.js jsdom// Don't assume that getComputedStyle is a property of the global objectif ( window.getComputedStyle ) {jQuery.extend( support, {pixelPosition: function() {// This test is executed only once but we still do memoizing// since we can use the boxSizingReliable pre-computing.// No need to check if the test was already performed, though.computePixelPositionAndBoxSizingReliable();return pixelPositionVal;},boxSizingReliable: function() {if ( boxSizingReliableVal == null ) {computePixelPositionAndBoxSizingReliable();}return boxSizingReliableVal;},reliableMarginRight: function() {// Support: Android 2.3// Check if div with explicit width and no margin-right incorrectly// gets computed margin-right based on width of container. (#3333)// WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right// This support function is only executed once so no memoizing is needed.var ret,marginDiv = div.appendChild( document.createElement( "div" ) );// Reset CSS: box-sizing; display; margin; border; paddingmarginDiv.style.cssText = div.style.cssText =// Support: Firefox<29, Android 2.3// Vendor-prefix box-sizing"-webkit-box-sizing:content-box;-moz-box-sizing:content-box;" +"box-sizing:content-box;display:block;margin:0;border:0;padding:0";marginDiv.style.marginRight = marginDiv.style.width = "0";div.style.width = "1px";docElem.appendChild( container );ret = !parseFloat( window.getComputedStyle( marginDiv, null ).marginRight );docElem.removeChild( container );div.removeChild( marginDiv );return ret;}});}})();return support;});