Calling .hide().show() on a stylesheet-hidden element wasn't bringing it back. Fixes #7331.

This commit is contained in:
jeresig 2010-10-27 14:35:26 -04:00
parent 6ab402dced
commit 6e7a4e73a2
2 changed files with 10 additions and 2 deletions

2
src/effects.js vendored
View file

@ -28,7 +28,7 @@ jQuery.fn.extend({
// Reset the inline display of this element to learn if it is
// being hidden by cascaded rules or not
if ( !jQuery.data(elem, "olddisplay") && display === "none" ) {
elem.style.display = "";
display = elem.style.display = "";
}
// Set elements which have been overridden with display: none

10
test/unit/effects.js vendored
View file

@ -6,10 +6,18 @@ test("sanity check", function() {
});
test("show()", function() {
expect(26);
expect(27);
var hiddendiv = jQuery("div.hidden");
hiddendiv.hide().show();
equals( hiddendiv.css("display"), "block", "Make sure a pre-hidden div is visible." );
QUnit.reset();
hiddendiv = jQuery("div.hidden");
equal(jQuery.css( hiddendiv[0], "display"), "none", "hiddendiv is display: none");
hiddendiv.css("display", "block");