How about:

$("#myelement").parents("table:eq(0)")

Does that do what you want?

Example: http://demos.texotela.co.uk/parents.html

--Sam

On Jul 17, 7:51 am, ProggerPete <[EMAIL PROTECTED]> wrote:
> Hi Andy,
>   parents doesn't do quite what I want.  I want a method I can use in
> event delegation handlers that basically says, 'Give me the nearest x
> element'.  I could of course check the current element, if it doesn't
> match I could then do a parents and then work on the 1st result in
> that, but that would be a bunch of extra processing for no gain (while
> it continues to check parents that I have no interest in).
>
>   I was more after info about any silly things I've done while
> implementing the function.  I've since discovered pushStack which
> helps a fair bit.  =)
>
> Cheers,
> Pete
>
> On Jul 15, 6:19 pm, "Andy Matthews" <[EMAIL PROTECTED]> wrote:
>
> > Pete...
>
> > There is a built in parent method which does pretty much what you're doing.
>
> >http://remysharp.com/jquery-api/
>
> > Look under parents().
>
> > -----Original Message-----
> > From: jquery-en@googlegroups.com [mailto:[EMAIL PROTECTED] On
>
> > Behalf Of ProggerPete
> > Sent: Tuesday, July 15, 2008 10:41 AM
> > To: jQuery (English)
> > Subject: [jQuery] My first jQuery plugin
>
> > Hi folks,
> >   I'm very new to jQuery and am playing around with what is possible.
>
> >   I found myself wanting a findParent function and couldn't spot one ready
> > made.  I'd love it if people could give me feedback on my implementation.
> > I'm sure there's plenty I could do better.  If this function also exists I'd
> > like to know where it is too.  =)
>
> > /**
> >  * return the first parent that matches the selector.  Optionally include
> > the src element in the search  */ $.fn.findParent = function() {
> >         var _this, _selector, _includeSelf, _result;
>
> >         function find(index, elem)
> >         {
> >                 if (!_includeSelf) elem = elem.parentNode;
> >                 while (elem)
> >                 {
> >                         if ($(elem).is(_selector)) return
> > _result.push(elem);
> >                         elem = elem.parentNode;
> >                 }
> >         }
>
> >         function _findParent(selector, includeSelf)
> >         {
> >                 var thisp = _this = this;
> >                 _selector = selector;
> >                 _includeSelf = includeSelf;
> >                 _result = [];
> >                 this.each(find);
> >                 var retObj = $(_result);
> >                 retObj.end = function () { return thisp };
> >                 return retObj;
> >         }
>
> >         return _findParent;
> > }();
>
> > Cheers,
> > Pete

Reply via email to