Hi Erik, I didn't know about logical operator short-circuiting, thanks for the info - it's good to know.
But this obviously wasn't in place on my tests or I wouldn't have got the results I did. So I don't think logical operator short-circuiting is a reliable enough solution to this problem... I considered doing exactly what you did - using a global variable to store metadata - but even then don't you have 2 issues with that? 1. lazy programming because you end up evaluating things before you actually need them 2. a nightmare mapping the metadata to its owner elements ? The flexibility provided by the metadata plugin is just too good and I can't think of another method that is worth while using... On Sep 21, 8:32 pm, "Erik Beeson" <[EMAIL PROTECTED]> wrote: > Thanks for this info. I eventually gave up on the metadata plugin in favor > of a global variable for holding my metadata. So instead of > $('#someID')[0].data, I now just do mynamespace.mydata['someID']. > > You mention breaking up the if statement to keep a function call from > happening. Thanks to logical operator short-circuiting, all you have to do > is move this.metaDone to before the function call, like so: > > if ( this.metaDone || this.nodeType == 9 || $.isXMLDoc(this) ) return; > > See here for more > info:http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Op... > > --Erik > > On 9/21/07, Diego A. <[EMAIL PROTECTED]> wrote: > > > > > I've written a short article about Metadata plugin performance issues > > in my blog: > > >http://fyneworks.blogspot.com/2007/09/jquery-metadata-plugin-performa... > > > I was wondering what you guys think about it... > > ...also might help people with the same problem.