Bah - I see they "fixed" it. You should not be able to select only one
anchor tag in this instance using $('#menu li a:first')....

On Jan 18, 9:33 am, "kellyjandr...@sbcglobal.net"
<kellyjandr...@sbcglobal.net> wrote:
> The question on all of this is usage - and I don't know how clear it
> was stated.
>
> The selectors everyone has put up are valid, but not necessarily for
> the usage.
>
> <<I have provlem with selecting
> a first link in code below. Can you help me how how it should look
> like jQuery code and also for case, if Home will not be a link, so
> "Rules" will be a first link.>>
>
> So the issue is to remove only the first link.  $('#menu li:first a)
> will only select the anchor inside first list item. Perfect until you
> put home inside that with no link. Then nothing matches that criteria.
>
> $('#menu li a:first') matches up to the first anchor tag inside a 
> li.http://test.learningjquery.com/selector-bug.html Proves the theory.
> If you did a selector of 'p' it would affect ALL of them, right? So
> there are 7 anchors in the first position of an li, and 0 in the
> second. Jquery 1.3 didn't create a bug - it fixed a selector problem.
>
> The only true selector is to use $('#menu a:first'). It will select
> the first anchor and only the first anchor.
>
> It all just problem with sloppy selectors in the past. They cleaned it
> up and got it right. I would suggest we make the adjustments.
>
> On Jan 17, 4:19 pm, "Nic Luciano" <nic.luci...@gmail.com> wrote:
>
> > Ah, Karl, I see the issue now. I was also confused with the original usage
> > since the discussion was about :first but he was using :first-child. So let
> > me ask, in your test, li a:first should only return one element (as per
> > docs, :first should always only return one element), correct? And
> > first-child would be what I originally expected (returning 7 links)?
>
> > Can't believe I overlooked that-  I stand corrected :D
>
> > On Sat, Jan 17, 2009 at 4:13 PM, Ricardo Tomasi 
> > <ricardob...@gmail.com>wrote:
>
> > > I know this isn't the dev list, but I'm curious about how come these
> > > bugs weren't caught by the test suite?
>
> > > On Jan 17, 6:50 pm, Karl Swedberg <k...@englishrules.com> wrote:
> > > > Nic,
> > > > Actually, it is a bug, at least in the sense that the results are
> > > > different from those of any previous version of jQuery.
>
> > > >   It isn't just about :first, though. It has to do with multiple-
> > > > descendant selectors in general. I've provided a test case athttp://
> > > test.learningjquery.com/selector-bug.html
> > > >   with side-by-side comparison of 1.2.6 and 1.3, showing the number of
> > > > matches (and I also posted an update to the ticket).
>
> > > > --Karl
>
> > > > ____________
> > > > Karl Swedbergwww.englishrules.comwww.learningjquery.com
>
> > > > On Jan 17, 2009, at 3:39 PM, Nic Luciano wrote:
>
> > > > > That's true, but that's exactly how it's supposed to function.
>
> > > > > On Sat, Jan 17, 2009 at 3:35 PM, jQuery Lover
> > > > > <ilovejqu...@gmail.com> wrote:
>
> > > > > No he is not!
>
> > > > > Suppose you have this scenario:
>
> > > > > <div id="container">
> > > > >       <ul id="menu">
> > > > >               <li>Home</li>
> > > > >               <li><a href="#">Rules</a></li>
> > > > >               <li><a href="#">Pilots</a></li>
> > > > >               <li><a href="#">Briefing</a></li>
> > > > >               <li><a href="#">IGC</a></li>
> > > > >               <li><a href="#">Results</a></li>
> > > > >               <li><a href="#">Forum</a></li>
> > > > >       </ul>
> > > > > </div>
>
> > > > > $('#menu li:first a').remove() - will do nothing here, since first li
> > > > > has no anchor in it !
>
> > > > > ----
> > > > > Read jQuery HowTo Resource  -  http://jquery-howto.blogspot.com
>
> > > > > On Sun, Jan 18, 2009 at 1:28 AM, Charlie22 <ch...@post.cz> wrote:
>
> > > > > > Well, you are right, thx for explanation. Now it is clear!!
>
> > > > > > On 17 Led, 21:04, Pedram <pedram...@gmail.com> wrote:
> > > > > >> hi Guys , I know what should you do ,
> > > > > >> $('#menu li:first a').remove()
> > > > > >> this is the code you need , jquery has no problem when you use this
> > > > > >> code $('#menu li a:first').remove(); the selector checks each li
> > > > > and
> > > > > >> removes the <a> so all of the links will be removed so in your case
> > > > > >> your code should look like this $('#menu li:first a').remove();
> > > > > the
> > > > > >> selector selects the first li and removes the <a>
> > > > > >> that set,
> > > > > >> I am just following john Resig in twitter it seems he is going to
> > > > > >> release jquery 1.3.1 maybe he found some little bugs.

Reply via email to