<< back to knowledgebase home

Menu loads but submenus and links do not work when using MenuMachine 2.2 or later

Article Applies To:

MenuMachine 2 only

GoLive CS, CS2

Mac, Windows

Article ID: 000153

Category: Browser Issues

Issue

The top level of the menu loads perfectly but the submenus and/or links don't work. The menu worked OK with versions of MenuMachine earlier than 2.2.

Solution

The new version of MenuMachine uses a different method to load the menus that relies on the browser sending an "onload" event once the page content has loaded. This is done to improve the loading speed of the menus because the submenus are loaded only once the rest of the page content has loaded rather than delaying the loading of other page elements.

If the page does not complete loading for some reason, MenuMachine will never get the signal that the page has loaded and the submenus will not be created.

Several things might cause this:

  • poorly-written JavaScript code that is in the page after the MenuMachine code can "steal" the onload event handler from MenuMachine so that MenuMachine's onload code is never called

  • an image or other content on the page is very large in terms of file size and the menus do not load until this content has finished loading

  • SWF or JavaScript code can load assets from external servers. If these requests do not complete, the page will not fire an onload event.


The best solution to these problems is to either fix or remove the content that is causing this problem, however the simplest way to fix it is to tell MenuMachine to use the old (pre-2.2) loading behaviour. To do this:

  • open the menumachine folder in the root of your site
  • open the menumachine2.js file
  • at the very top of the file, above the copyright notice, add the following line:

  • MMLoadFast=false;

    Note that case is important.
  • save the menumachine2.js file and re-upload the menumachine folder to your server.

Last updated: June 6, 2007

This article has been viewed 7390 times.

Related articles