Hi Luke, What you're talking about doing is called an "expando" property. They're not covered by a standard AFAIK, although interestingly Microsoft has an `expando` property on objects[1] (this is where the name came from) which is a boolean saying whether you can do this. If you do a web search on "expando" you'll find a lot more information (and a studio album by Timothy B. Schmit, but leave that aside...). (Ignore the statement on GreaseSpot that expandos relate to custom attributes; they don't, the article is just wrong.)
Prototype uses expando properties like mad (the whole concept of "extending" an element[2] relies on expandos, and Prototype uses them elsewhere as well), so if you're using Prototype, you're already relying on the environment allowing expandos. But it's probably worth noting that Prototype is moving away from expandos at some point in favor of doing a jQuery-like wrapper thing instead. I'd avoid having your expando property value (directly or indirectly) reference another DOM element, as that sets up the possibility of circular references, and circular references that dip between the DOM and JavaScript layers can cause memory leaks on IE. [1] http://msdn.microsoft.com/en-us/library/ms533747(VS.85).aspx [2] http://prototypejs.org/learn/extensions Happy coding, -- T.J. Crowder Independent Software Engineer tj / crowder software / com www / crowder software / com On Nov 21, 8:28 pm, Luke <kickingje...@gmail.com> wrote: > Thanks Walter. If that's the only reason I'm willing to take that > risk. In my whole application I will only attach one variable, kind of > like my namespace and this will give me some convenience when > accessing that namespace. If it's conform to W3C standards and works > in all browsers, I think it's ok. But is it? Can't find any > documentation or specification on this > > Luke > > On Nov 21, 8:50 pm, Walter Lee Davis <wa...@wdstudio.com> wrote: > > > > > > > > > I think that the basic reason for the separate store is to provide > > insulation from any current, past, or future browsers tramping on a > > key name you may choose today and test in some subset of all browsers. > > Browser scripting is fun enough in IE with its amusing conflation of > > Name and ID properties without getting into the weeds with a perfectly- > > safe-seeming data element being confused for some completely other > > property or method. > > > Walter > > > On Nov 21, 2010, at 2:15 PM, Luke wrote: > > > > Hi, > > > > is there anyting wrong with extending a DOM-Object with > > > > $('myelement').myvariable = "something"; > > > > or why is there the prototype-method store, which saves values in a > > > seperate hash? > > > > Thank you, > > > Lukas > > > > -- > > > You received this message because you are subscribed to the Google > > > Groups "Prototype & script.aculo.us" group. > > > To post to this group, send email to > > > prototype-scriptaculous@googlegroups.com > > > . > > > To unsubscribe from this group, send email to > > > prototype-scriptaculous+unsubscr...@googlegroups.com > > > . > > > For more options, visit this group > > > athttp://groups.google.com/group/prototype-scriptaculous?hl=en > > > . -- You received this message because you are subscribed to the Google Groups "Prototype & script.aculo.us" group. To post to this group, send email to prototype-scriptacul...@googlegroups.com. To unsubscribe from this group, send email to prototype-scriptaculous+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/prototype-scriptaculous?hl=en.