Change the way jQuery.data works so that there is no longer a chance of collision between user data and internal data. Fixes #6968.

This commit is contained in:
Colin Snover 2011-01-09 15:52:33 -06:00
parent 1d1d4fe112
commit 8e59a99e0a
10 changed files with 352 additions and 203 deletions

View file

@ -895,7 +895,7 @@ test("hide hidden elements (bug #7141)", function() {
var div = jQuery("<div style='display:none'></div>").appendTo("#main");
equals( div.css("display"), "none", "Element is hidden by default" );
div.hide();
ok( !div.data("olddisplay"), "olddisplay is undefined after hiding an already-hidden element" );
ok( !jQuery._data(div, "olddisplay"), "olddisplay is undefined after hiding an already-hidden element" );
div.show();
equals( div.css("display"), "block", "Show a double-hidden element" );
@ -910,7 +910,7 @@ test("hide hidden elements, with animation (bug #7141)", function() {
var div = jQuery("<div style='display:none'></div>").appendTo("#main");
equals( div.css("display"), "none", "Element is hidden by default" );
div.hide(1, function () {
ok( !div.data("olddisplay"), "olddisplay is undefined after hiding an already-hidden element" );
ok( !jQuery._data(div, "olddisplay"), "olddisplay is undefined after hiding an already-hidden element" );
div.show(1, function () {
equals( div.css("display"), "block", "Show a double-hidden element" );
start();