/base/000_base/node_modules/bootstrap-validator/sandbox/jquery/src/css/support.js |
@@ -0,0 +1,83 @@ |
define([ |
"../core", |
"../var/support" |
], function( jQuery, support ) { |
|
(function() { |
var pixelPositionVal, boxSizingReliableVal, |
// Support: Firefox, Android 2.3 (Prefixed box-sizing versions). |
divReset = "padding:0;margin:0;border:0;display:block;-webkit-box-sizing:content-box;" + |
"-moz-box-sizing:content-box;box-sizing:content-box", |
docElem = document.documentElement, |
container = document.createElement( "div" ), |
div = document.createElement( "div" ); |
|
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;position:absolute;top:0;left:-9999px;" + |
"margin-top:1px"; |
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() { |
// Support: Firefox, Android 2.3 (Prefixed box-sizing versions). |
div.style.cssText = "-webkit-box-sizing:border-box;-moz-box-sizing:border-box;" + |
"box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;" + |
"position:absolute;top:1%"; |
docElem.appendChild( container ); |
|
var divStyle = window.getComputedStyle( div, null ); |
pixelPositionVal = divStyle.top !== "1%"; |
boxSizingReliableVal = divStyle.width === "4px"; |
|
docElem.removeChild( container ); |
} |
|
// Use window.getComputedStyle because jsdom on node.js will break without it. |
if ( 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" ) ); |
marginDiv.style.cssText = div.style.cssText = divReset; |
marginDiv.style.marginRight = marginDiv.style.width = "0"; |
div.style.width = "1px"; |
docElem.appendChild( container ); |
|
ret = !parseFloat( window.getComputedStyle( marginDiv, null ).marginRight ); |
|
docElem.removeChild( container ); |
|
// Clean up the div for other support tests. |
div.innerHTML = ""; |
|
return ret; |
} |
}); |
} |
})(); |
|
return support; |
|
}); |