Permalink
Cannot retrieve contributors at this time
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
34 lines (28 sloc)
1.26 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 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"; | |
| }; | |
| } ); |