Landing the new expando management code. Completely overhauls how data is associated with elements.

Plugins will be most interested in:
- jQuery.data(elem) -> Unique ID for the element
- jQuery.data(elem, name) -> Named data store for the element
- jQuery.data(elem, name, value) -> Saves a value to the named data store
- jQuery.removeData(elem) -> Remove the expando and the complete data store
- jQuery.removeData(elem, name) -> Removes just this one named data store

jQuery's .remove() and .empty() automatically clean up after themselves. Once an element leaves a DOM document their events are no longer intact. Thus, statements like so:
{{{
  $("#foo").remove().appendTo("#bar");
}}}
should be written like so:
{{{
  $("#foo").appendTo("#bar");
}}}
in order to avoid losing the bound events.
This commit is contained in:
John Resig 2007-09-08 23:31:23 +00:00
parent 15a78f8fea
commit 3a4e1233aa
5 changed files with 108 additions and 47 deletions

View file

@ -161,7 +161,7 @@ function expect(asserts) {
* Resets the test setup. Useful for tests that modify the DOM.
*/
function reset() {
document.getElementById('main').innerHTML = _config.fixture;
$("#main").html( _config.fixture );
}
/**