From f7045b862a5b7c3de8ee2ea3da67616b38a667cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jes=C3=BAs=20Eduardo?= Date: Sun, 6 Aug 2017 20:43:24 -0500 Subject: first commit --- lib/jquery/src/css/var/isHiddenWithinTree.js | 34 ++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 lib/jquery/src/css/var/isHiddenWithinTree.js (limited to 'lib/jquery/src/css/var/isHiddenWithinTree.js') diff --git a/lib/jquery/src/css/var/isHiddenWithinTree.js b/lib/jquery/src/css/var/isHiddenWithinTree.js new file mode 100644 index 0000000..3cfb93e --- /dev/null +++ b/lib/jquery/src/css/var/isHiddenWithinTree.js @@ -0,0 +1,34 @@ +define( [ + "../../core", + "../../selector" + + // css is assumed +], function( jQuery ) { + "use strict"; + + // isHiddenWithinTree reports if an element has a non-"none" display style (inline and/or + // through the CSS cascade), which is useful in deciding whether or not to make it visible. + // It differs from the :hidden selector (jQuery.expr.pseudos.hidden) in two important ways: + // * A hidden ancestor does not force an element to be classified as hidden. + // * Being disconnected from the document does not force an element to be classified as hidden. + // These differences improve the behavior of .toggle() et al. when applied to elements that are + // detached or contained within hidden ancestors (gh-2404, gh-2863). + return function( elem, el ) { + + // isHiddenWithinTree might be called from jQuery#filter function; + // in that case, element will be second argument + elem = el || elem; + + // Inline style trumps all + return elem.style.display === "none" || + elem.style.display === "" && + + // Otherwise, check computed style + // Support: Firefox <=43 - 45 + // Disconnected elements can have computed display: none, so first confirm that elem is + // in the document. + jQuery.contains( elem.ownerDocument, elem ) && + + jQuery.css( elem, "display" ) === "none"; + }; +} ); -- cgit v1.2.3