summaryrefslogtreecommitdiffstats
path: root/bower_components/jquery/src/css/hiddenVisibleSelectors.js
diff options
context:
space:
mode:
authorLibravatarDererk <dererk@satellogic.com>2016-11-15 14:18:46 -0300
committerLibravatarDererk <dererk@satellogic.com>2016-11-15 14:18:46 -0300
commitffb671c61a24a9086343b54bad080e145ff33fc5 (patch)
tree2c5291f7a34edf4afdc8e07887a148291bfa3fa1 /bower_components/jquery/src/css/hiddenVisibleSelectors.js
parent4e3224c012df9f74f010eb92203520515e8537b9 (diff)
New upstream version 7.8.1upstream/7.8.1
Diffstat (limited to 'bower_components/jquery/src/css/hiddenVisibleSelectors.js')
-rw-r--r--bower_components/jquery/src/css/hiddenVisibleSelectors.js34
1 files changed, 28 insertions, 6 deletions
diff --git a/bower_components/jquery/src/css/hiddenVisibleSelectors.js b/bower_components/jquery/src/css/hiddenVisibleSelectors.js
index 0bd86c8..e75ff5f 100644
--- a/bower_components/jquery/src/css/hiddenVisibleSelectors.js
+++ b/bower_components/jquery/src/css/hiddenVisibleSelectors.js
@@ -1,20 +1,42 @@
-define([
+define( [
"../core",
+ "../var/document",
"./support",
"../selector",
"../css"
-], function( jQuery, support ) {
+], function( jQuery, document, support ) {
+
+function getDisplay( elem ) {
+ return elem.style && elem.style.display || jQuery.css( elem, "display" );
+}
+
+function filterHidden( elem ) {
+
+ // Disconnected elements are considered hidden
+ if ( !jQuery.contains( elem.ownerDocument || document, elem ) ) {
+ return true;
+ }
+ while ( elem && elem.nodeType === 1 ) {
+ if ( getDisplay( elem ) === "none" || elem.type === "hidden" ) {
+ return true;
+ }
+ elem = elem.parentNode;
+ }
+ return false;
+}
jQuery.expr.filters.hidden = function( elem ) {
+
// Support: Opera <= 12.12
// Opera reports offsetWidths and offsetHeights less than zero on some elements
- return elem.offsetWidth <= 0 && elem.offsetHeight <= 0 ||
- (!support.reliableHiddenOffsets() &&
- ((elem.style && elem.style.display) || jQuery.css( elem, "display" )) === "none");
+ return support.reliableHiddenOffsets() ?
+ ( elem.offsetWidth <= 0 && elem.offsetHeight <= 0 &&
+ !elem.getClientRects().length ) :
+ filterHidden( elem );
};
jQuery.expr.filters.visible = function( elem ) {
return !jQuery.expr.filters.hidden( elem );
};
-});
+} );