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.

Reply via email to