Skip to content

Commit 7d5b86e

Browse files
committed
Refactor defaultDisplay's node creation and display logic, -6
1 parent 2eda329 commit 7d5b86e

File tree

1 file changed

+13
-10
lines changed

1 file changed

+13
-10
lines changed

src/css.js

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -443,17 +443,13 @@ function getWidthOrHeight( elem, name, extra ) {
443443
) + "px";
444444
}
445445

446-
447446
// Try to determine the default display value of an element
448447
function css_defaultDisplay( nodeName ) {
449-
var elem,
450-
doc = document,
448+
var doc = document,
451449
display = elemdisplay[ nodeName ];
452450

453451
if ( !display ) {
454-
elem = jQuery( doc.createElement( nodeName ) );
455-
display = curCSS( elem.appendTo( doc.body )[0], "display" );
456-
elem.remove();
452+
display = actualDisplay( nodeName, doc );
457453

458454
// If the simple way fails, read from inside an iframe
459455
if ( display === "none" || !display ) {
@@ -468,9 +464,7 @@ function css_defaultDisplay( nodeName ) {
468464
doc.write("<!doctype html><html><body>");
469465
doc.close();
470466

471-
elem = jQuery( doc.createElement( nodeName ) );
472-
display = curCSS( elem.appendTo( doc.body )[0], "display" );
473-
elem.remove();
467+
display = actualDisplay( nodeName, doc );
474468
iframe.detach();
475469
}
476470

@@ -481,6 +475,15 @@ function css_defaultDisplay( nodeName ) {
481475
return display;
482476
}
483477

478+
// Called ONLY from within css_defaultDisplay
479+
function actualDisplay( name, doc ) {
480+
var elem, display;
481+
elem = jQuery( doc.createElement( name ) );
482+
display = curCSS( elem.appendTo( doc.body )[0], "display" );
483+
elem.remove();
484+
return display;
485+
}
486+
484487
jQuery.each([ "height", "width" ], function( i, name ) {
485488
jQuery.cssHooks[ name ] = {
486489
get: function( elem, computed, extra ) {
@@ -541,7 +544,7 @@ if ( !jQuery.support.opacity ) {
541544
// if setting opacity to 1, and no other filters exist - attempt to remove filter attribute #6652
542545
// if value === "", then remove inline opacity #12685
543546
if ( ( value >= 1 || value === "" ) &&
544-
jQuery.trim( filter.replace( ralpha, "" ) ) === "" &&
547+
jQuery.trim( filter.replace( ralpha, "" ) ) === "" &&
545548
style.removeAttribute ) {
546549

547550
// Setting style.filter to null, "" & " " still leave "filter:" in the cssText

0 commit comments

Comments
 (0)