I think you want to use :has() selector instead of contains().
http://docs.jquery.com/Selectors/has

I think contains() works only for text nodes and not elements. I
haven't tested it to be sure.


On Aug 20, 9:06 pm, Hans <deboem...@gmail.com> wrote:
> hello everybody,
>
> the site I'm building has a dropdown menu based on an unordered list
> with 3 levels. I've got it working nicely using jQuery, but there is
> one thing I can't get working..
>
> this is the problem:
>
> the 'a href' on the first tow levels serves to open up the level below
> without leaving the page. there is a real link for the non-script
> users, so I have switched off the first two levels using
> "event.preventDefault();"
>
> however, on the second level some items do not contain any 3rd level
> links, so in that case the user should navigate away using the 2nd
> level link. therefore the link on level 2 should one be disabled if
> the list-item contains a list (ul).
>
> I tried doing this:
>
>         $('ul#hoofdNavigatieLijst > li > ul > li > a ').click(function(event)
> {
>                 if ($(this).parent('li').contains('ul')) {
>                 event.preventDefault();
>                 }
>                 });
>
> it doesn't do the trick, however.
>
> can anyone help me? thanks!

Reply via email to