It's not faster, it actually adds a bit of overhead. From jQuery source code:
// HANDLE: $(expr, $(...)) } else if ( !context || context.jquery ) { return (context || rootjQuery).find( selector ); that means everytime you type $('.someclass', this) it's effectively being "translated" to $(this).find('.someclass'). cheers, - ricardo On Mar 17, 10:02 pm, Eric Garside <gars...@gmail.com> wrote: > As an aside, you can use a different syntax for .find() which last I > knew was a bit faster and less characters: > > $(this).find('.someclass') > > is equivilent to: > > $('.someclass', $(this)) > > On Mar 17, 8:58 pm, "so.phis.ti.kat" <see.marlon....@gmail.com> wrote: > > > Thanks for the tip. I started to use FF's console to see more details > > of the object(s) > > Here's my code: > > > $(document).ready(function (){ > > $("li.page").click(function (event) { > > var secondList = "ul.categories"; > > if ($(this).find(secondList).length > 0) { > > > > $(this).children(secondList).slideToggle("slow"); > > } > > }); > > > }); > > > On Mar 17, 12:18 pm, mkmanning <michaell...@gmail.com> wrote: > > > > if ($(this).find("ul")) { ... > > > > will always return a jQuery object and so evaluate to true; you need > > > to check the length: > > > > if ($(this).find("ul").length>0) { ... > > > > On Mar 17, 8:57 am, "so.phis.ti.kat" <see.marlon....@gmail.com> wrote: > > > > > Hello Everyone, > > > > I tried doing a search and found some possible solutions but was not > > > > able to get it working for my markup so I am wondering if the > > > > following can be done and how. > > > > > Markup > > > > <ul class="pages"> > > > > <li class="page"> > > > > <a class="current" title="Edit index" href="#"> index</a> > > > > </li> > > > > <li class="page"> > > > > <a title="Edit menu" href="#"> menu</a> > > > > <ul id="menu" class="categories">...</ul> > > > > </li> > > > > <li class="page"> > > > > <a title="Edit menu" href="#"> catering</a> > > > > <ul id="catering" class="categories">...</ul> > > > > </li> > > > > </ul> > > > > > So I want to say, when you click on any <li class="page"></li>, look > > > > to see if that <li> has a child <ul>... thats it for now. I later want > > > > to use the effects to "show" and "hide" the contents of that <li>. > > > > > jQuery > > > > $(document).ready(function (){ > > > > $("li.page").click(function (event) { > > > > if ($(this).find("ul")) { > > > > alert("yes"); > > > > } else { > > > > alert("no"); > > > > } > > > > }); > > > > > }); > > > > > Thoughts? Is there a better way or better functions to use? > > > > I tried find and children.