This will be a short thread--NOT! :-) > Controller set of methods is returned.. > > $('#grid').grid().data(data).drig().show() > $('#grid').grid().scrollToRow(6).drig().css("border", "1px")
Uh, drig()? So if I want to return to I was before scrollToRow(6), should I use (6)woRoTllorsc? ;-) I don't know if this a good idiom; changing the object type within the chain might be be too tricky. Also, would the plugin itself have a need for chained methods to change its internal state? Still, to make your object chainable like that, I think your $().grid method would just need to save its jQuery "this" in your Grid object before returning: jQuery.fn.grid = function() { var gridObject = // ... get your grid object ... gridObject.jQuery = this; return gridObject; } jQuery.fn.drig = function() { return this.jQuery; } As Jörn mentioned, you could still use $("#grid").grid() to create and/or retrieve a Grid object, even if it wasn't chainable. It seems like you'd want some way to determine whether it was a Grid creation or just getting an existing object; you could have a separate $().createGrid() method or maybe the $().grid() argument could be required on creation. (Also, should the core should a standard way for plugins to associate object data with an element, like it does with events?) Whatever results from this discussion should go to the plugins authoring page on the wiki, http://jquery.com/plugins/Authoring/ _______________________________________________ jQuery mailing list discuss@jquery.com http://jquery.com/discuss/