Sha256: 8bec62bc76ade42ffd1ae486494d869f6ddd1ea173eba5387cf39eae4044f310

Contents?: true

Size: 1.82 KB

Versions: 126

Compression:

Stored size: 1.82 KB

Contents

define([
	"../core",
	"../manipulation" // appendTo
], function( jQuery ) {

var iframe,
	elemdisplay = {};

/**
 * Retrieve the actual display of a element
 * @param {String} name nodeName of the element
 * @param {Object} doc Document object
 */
// Called only from within defaultDisplay
function actualDisplay( name, doc ) {
	var style,
		elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ),

		// getDefaultComputedStyle might be reliably used only on attached element
		display = window.getDefaultComputedStyle && ( style = window.getDefaultComputedStyle( elem[ 0 ] ) ) ?

			// Use of this method is a temporary fix (more like optmization) until something better comes along,
			// since it was removed from specification and supported only in FF
			style.display : jQuery.css( elem[ 0 ], "display" );

	// We don't have any data stored on the element,
	// so use "detach" method as fast way to get rid of the element
	elem.detach();

	return display;
}

/**
 * Try to determine the default display value of an element
 * @param {String} nodeName
 */
function defaultDisplay( nodeName ) {
	var doc = document,
		display = elemdisplay[ nodeName ];

	if ( !display ) {
		display = actualDisplay( nodeName, doc );

		// If the simple way fails, read from inside an iframe
		if ( display === "none" || !display ) {

			// Use the already-created iframe if possible
			iframe = (iframe || jQuery( "<iframe frameborder='0' width='0' height='0'/>" )).appendTo( doc.documentElement );

			// Always write a new HTML skeleton so Webkit and Firefox don't choke on reuse
			doc = iframe[ 0 ].contentDocument;

			// Support: IE
			doc.write();
			doc.close();

			display = actualDisplay( nodeName, doc );
			iframe.detach();
		}

		// Store the correct default display
		elemdisplay[ nodeName ] = display;
	}

	return display;
}

return defaultDisplay;

});

Version data entries

126 entries across 126 versions & 10 rubygems

Version Path
wrgem-0.0.4 lib/generators/wrstart/template/vendor/assets/components/jquery/src/css/defaultDisplay.js
wrgem-0.0.3 lib/generators/wrstart/template/vendor/assets/components/jquery/src/css/defaultDisplay.js
wrgem-0.0.2 lib/generators/wrstart/template/vendor/assets/components/jquery/src/css/defaultDisplay.js
wrgem-0.0.1 lib/generators/wrstart/template/vendor/assets/components/jquery/src/css/defaultDisplay.js
rubyneat_dashboard-0.4.0.alpha.6 bower_components/jquery/src/css/defaultDisplay.js
rubyneat_dashboard-0.4.0.alpha.4.pre.1 bower_components/jquery/src/css/defaultDisplay.js
rubyneat_dashboard-0.4.0.alpha.4 bower_components/jquery/src/css/defaultDisplay.js
TokiCLI-0.2.1 lib/TokiServer/bower_components/jquery/src/css/defaultDisplay.js
TokiCLI-0.2.0 lib/TokiServer/bower_components/jquery/src/css/defaultDisplay.js
growbot-web-0.0.6 public/vendor/jquery/src/css/defaultDisplay.js
growbot-web-0.0.5 public/vendor/jquery/src/css/defaultDisplay.js
growbot-web-0.0.4 public/vendor/jquery/src/css/defaultDisplay.js
growbot-web-0.0.2 public/vendor/jquery/src/css/defaultDisplay.js
growbot-web-0.0.1 public/vendor/jquery/src/css/defaultDisplay.js
test_server-0.3.4 vendor/assets/components/jquery/src/css/defaultDisplay.js
test_server-0.3.2 vendor/assets/components/jquery/src/css/defaultDisplay.js
test_server-0.3.1 vendor/assets/components/jquery/src/css/defaultDisplay.js
test_server-0.2.4 vendor/assets/components/jquery/src/css/defaultDisplay.js
test_server-0.2.3 vendor/assets/components/jquery/src/css/defaultDisplay.js
test_server-0.2.2 vendor/assets/components/jquery/src/css/defaultDisplay.js