You could add the offscreen class to the appropriate menu item and then
remove the sibling classes all at once
$(.nav_sub_products).siblings().removeClass('onscreen'); You would just have
to be sure that all the menu items are true siblings.

On Tue, Jan 13, 2009 at 11:36 AM, r...@lighthouseuk.net 
<r...@50-tuning.com>wrote:

>
> Hi,
> I'm new to jQuery and liking what I've seen so far.
>
> I'm curious as to whether I can reduce my code, using chaining
> perhaps?
>
> Example...
>
> $('.nav_company').hoverIntent(function() { // toggle display of
> company sub menu content panel
>        $('.nav_sub_default').removeClass('onscreen').addClass
> ('offscreen');
>        $('.nav_sub_company').removeClass('offscreen').addClass
> ('onscreen');
>        $('.nav_sub_products').removeClass('onscreen').addClass
> ('offscreen');
>        $('.nav_sub_markets').removeClass('onscreen').addClass
> ('offscreen');
>        $('.nav_sub_tools_support').removeClass('onscreen').addClass
> ('offscreen');
>        $('.nav_sub_news_events').removeClass('onscreen').addClass
> ('offscreen');
>      },function(){
>        return false;
> });
>
> Based on the fact that there are 6 menu items (nav_sub_x) - I
> currently have the above code entered 6 times to add and remove the
> necessary classes from each of the relevant DIVs on the page.
>
> Is there a cleaner way to do this?
> Many thanks in advance.
> Cheers,
> Rob
>

Reply via email to