tuiHoneyPot

front and back end of my TUI honeypot
Log | Files | Refs | README

isHiddenWithinTree.js (1284B)


      1 define( [
      2 	"../../core",
      3 	"../../core/isAttached"
      4 
      5 	// css is assumed
      6 ], function( jQuery, isAttached ) {
      7 	"use strict";
      8 
      9 	// isHiddenWithinTree reports if an element has a non-"none" display style (inline and/or
     10 	// through the CSS cascade), which is useful in deciding whether or not to make it visible.
     11 	// It differs from the :hidden selector (jQuery.expr.pseudos.hidden) in two important ways:
     12 	// * A hidden ancestor does not force an element to be classified as hidden.
     13 	// * Being disconnected from the document does not force an element to be classified as hidden.
     14 	// These differences improve the behavior of .toggle() et al. when applied to elements that are
     15 	// detached or contained within hidden ancestors (gh-2404, gh-2863).
     16 	return function( elem, el ) {
     17 
     18 		// isHiddenWithinTree might be called from jQuery#filter function;
     19 		// in that case, element will be second argument
     20 		elem = el || elem;
     21 
     22 		// Inline style trumps all
     23 		return elem.style.display === "none" ||
     24 			elem.style.display === "" &&
     25 
     26 			// Otherwise, check computed style
     27 			// Support: Firefox <=43 - 45
     28 			// Disconnected elements can have computed display: none, so first confirm that elem is
     29 			// in the document.
     30 			isAttached( elem ) &&
     31 
     32 			jQuery.css( elem, "display" ) === "none";
     33 	};
     34 } );