Agreed... like Dave Methvin said: you may need the elements block you used
for a situation where you might, for example, reinsert it later.

IMHO, the methods he quoted (previously mentioned by John Resig) sound the
best resources in this situation... I'll start something this week in this
direction...

Thanks!

Diogo

On Sun, Nov 30, 2008 at 7:43 PM, Ariel Flesler <[EMAIL PROTECTED]> wrote:

>
> Yeah, parentNode is not good enough.
>
> On Sun, Nov 30, 2008 at 4:35 PM, ricardobeat <[EMAIL PROTECTED]>
> wrote:
> >
> > Hi,
> >
> > It seems the ownerDocument is set for the created element even if it's
> > not in the DOM, it's the document where jQuery was loaded in. A simple
> > check for parentNode or offsetParent would do:
> >
> > $.fn.inDOM = function(){
> >     return !!this.parentNode; //boolean
> > });
> >
> > parentNode returns faster for elements in the DOM, while offsetParent
> > returns faster for elements not in the DOM (in FF3 at least).
> >
> > Hope I'm not missing anything. It surely would need a better name :]
> >
> > cheers,
> > - ricardo
> > On 29 nov, 14:46, Ariel Flesler <[EMAIL PROTECTED]> wrote:
> >> 'body' should be replaced by 'html'.
> >>
> >> Maybe we can make it faster by consulting expandos like
> >> ownerDocument ?
> >>
> >> --
> >> Ariel Fleslerhttp://flesler.blogspot.com
> >>
> >> On Nov 27, 12:52 am, diogobaeder <[EMAIL PROTECTED]> wrote:
> >>
> >> > Hi there,
> >>
> >> > I'm new here (and in jQuery), but even though I'd like to propose some
> >> > simple but usefull method to the jQuery object (at core.js) to tell
> >> > the API user if an element exists in the document. I've tried to build
> >> > one as follows:
> >>
> >> > [CODE]
> >> > (function($) {
> >>
> >> >     $.fn.inDOM = function() {
> >> >         return !!this.parents('body').length;
> >> >     };
> >>
> >> > })(jQuery);
> >>
> >> > jQuery(document).ready(function(){
> >> >     var jEl = $('.someExistingClass');
> >>
> >> >     // Should be in DOM
> >> >     console.debug(jEl.inDOM());
> >>
> >> >     // Removing the element
> >> >     jEl.remove();
> >>
> >> >     // Should NOT be in DOM
> >> >     console.debug(jEl.inDOM());});
> >>
> >> > [/CODE]
> >>
> >> > So, if the client sets a variable as a jQuery object, and at some
> >> > point of the code the DOM element within it can be removed, he/she can
> >> > test if it really was. OK, I know it sounds unsignificant, but I think
> >> > it would still be usefull.
> >>
> >> > Thanks!
> >>
> >> > Diogo Baeder
> > >
> >
>
>
>
> --
> Ariel Flesler
> http://flesler.blogspot.com
>
> >
>


-- 
Diogo Baeder
http://www.diogobaeder.com.br

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"jQuery Development" 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/jquery-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to