MCPcopy Index your code
hub / github.com/JsAaron/jQuery / showHide

Function showHide

2.1.1/test/other.js:3231–3280  ·  view source on GitHub ↗
( elements, show )

Source from the content-addressed store, hash-verified

3229}
3230
3231function showHide( elements, show ) {
3232 var display, elem, hidden,
3233 values = [],
3234 index = 0,
3235 length = elements.length;
3236
3237 for ( ; index < length; index++ ) {
3238 elem = elements[ index ];
3239 if ( !elem.style ) {
3240 continue;
3241 }
3242
3243 values[ index ] = data_priv.get( elem, "olddisplay" );
3244 display = elem.style.display;
3245 if ( show ) {
3246 // Reset the inline display of this element to learn if it is
3247 // being hidden by cascaded rules or not
3248 if ( !values[ index ] && display === "none" ) {
3249 elem.style.display = "";
3250 }
3251
3252 // Set elements which have been overridden with display: none
3253 // in a stylesheet to whatever the default browser style is
3254 // for such an element
3255 if ( elem.style.display === "" && isHidden( elem ) ) {
3256 values[ index ] = data_priv.access( elem, "olddisplay", defaultDisplay(elem.nodeName) );
3257 }
3258 } else {
3259 hidden = isHidden( elem );
3260
3261 if ( display !== "none" || !hidden ) {
3262 data_priv.set( elem, "olddisplay", hidden ? display : jQuery.css( elem, "display" ) );
3263 }
3264 }
3265 }
3266
3267 // Set the display of most of the elements in a second loop
3268 // to avoid the constant reflow
3269 for ( index = 0; index < length; index++ ) {
3270 elem = elements[ index ];
3271 if ( !elem.style ) {
3272 continue;
3273 }
3274 if ( !show || elem.style.display === "none" || elem.style.display === "" ) {
3275 elem.style.display = show ? values[ index ] || "" : "none";
3276 }
3277 }
3278
3279 return elements;
3280}
3281
3282jQuery.extend({
3283 // Add in style property hooks for overriding the default

Callers 1

other.jsFile · 0.70

Calls 2

isHiddenFunction · 0.70
defaultDisplayFunction · 0.70

Tested by

no test coverage detected