I had similiar problems once with Prototype and IE6. My workaround was to "not trust" $() but use the Element.foo methods instead (which worked quite well, however, I needed to patch some of those to use Element.bar internally). I'll try to come up with some source code for this.
Christoph On Mar 15, 8:12 am, "T.J. Crowder" <[email protected]> wrote: > Hi, > > > As said in the original post: It is the $() functions itsself which > > fails. $() calls Element.extent, and IE6 complains about Element to > > not support the method request. > > You've said "Element.extent" in two different posts now. Just to be > absolutely sure we're not overlooking something obvious: There is no > "Element.extent" function in Prototype. There is an "Element.extend" > function, which is used by $() (and others). Has your prototype.js > file gotten messed up or something? If it's just a typo, no worries (I > have several standard typos I keep repeating), but seeing it in two > different notes makes me think I should flag it up. > > Assuming it's just a typo: > > Fundamentally, Prototype 1.6.1 *does* work in IE6. I've used it in a > couple of intranet projects in organizations where IE6 is still > (shudder) the corporate standard. So the question is what's happening > in your specific situation. > > I'd probably look at debugging this line by line in Visual Studio or > Visual Interdev. In particular, since you're saying that `Element` is > undefined at the point where $() is calling it (which is Truly Weird), > I'd look at walking through the Prototype bootstrap and in particular > lines 1770-1784 where `Element` is getting set up. > > But first I'd double-check that my copy of Prototype hadn't gotten > messed up somehow by downloading a fresh copy and comparing. > > FWIW, > -- > T.J. Crowder > Independent Software Consultant > tj / crowder software / comwww.crowdersoftware.com > > On Jan 14, 11:14 am, Carsten <[email protected]> wrote: > > > > > As said in the original post: It is the $() functions itsself which > > fails. $() calls Element.extent, and IE6 complains about Element to > > not support the method request. > > > On 27 Nov. 2009, 17:01, Walter Lee Davis <[email protected]> wrote: > > > > You will get this error in IE when the object you are trying to > > > manipulate in Prototype has not been "extended" yet[1]. You can work > > > around this by using the $ function to get and extend the object > > > before attempting to manipulate it. > > > > var elm = $(elm); > > > > if (!!elm){ > > > //your code here > > > > } > > > > Walter > > > > 1.http://api.prototypejs.org/dom/element.html#extend-class_method > > > > On Nov 26, 2009, at 5:52 AM, Carsten wrote: > > > > >> Are you certain that the object has actually been created in the DOM > > > >> when you call this? > > > > > "Element" is the Element-object from the prototype library. The > > > > library has been included and other objects like Ajax are present. > > > > > -- > > > > > 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 > > > > [email protected] > > > > . > > > > To unsubscribe from this group, send email to > > > > [email protected] > > > > . > > > > 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 [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/prototype-scriptaculous?hl=en.
