There is an inherited problem with drop-down menus. This is that if a menu item has children, it is often appropriate to make the parent item a simple, non clickable label that simply displays the child items when hovered over. As things currently stand, this cannot be easily achieved with Superfish, etc and the only workaround is to allow the parent to load some innocuous page or other when clicked, which is an awful fudge (I normally resort to having the parent label load the first child item when clicked -ugh!).
I think an update to the menu module is needed that provides an additional option to make parent menu item labels non-clickable using the Javascript 'void' operation (so that mouseover colour changes still occur correctly but there is no unwanted page loading if the parent item is clicked). This option would be helpful even for standard, vertical menus and could be used together with the existing option of showing child items expanded. As for implementation, it would probably be easiest to add an option something like "" to the list of optional values ("node/add", "", etc) for the Path item in the "Add Menu Link" form.

Comments

manObject’s picture

Oops! The last line should have read: As for implementation, it would probably be easiest to add an option something like "<null>" to the list of optional values ("node/add", "<front>", etc) for the Path item in the "Add Menu Link" form.

manObject’s picture

Status: Active » Closed (fixed)

There is a module available for D6 and D7 called "Special Menu Items". Neither versions are very good. It is supposed to allow the creation of non-linking menu items but there are two major problems with this approach: 1. The breadcrumb trail cannot cope with non-linking items and treats the first non-linking item as the end of the trail.
2. Once a menu has been constructed with non-linking items, it loses structure in a similar way to the breadcrumb trail problem if the Special menu Items Module is ever disabled (however, this structure does re-appear if the module is re-enabled).

The main purpose of the module is to allow parent menu items in drop-down menus the option to be non-linking. This is required when the parent menu item has one or more children. Without this module, parent items are always clickable and therefore have to have a node of some sort assigned to them. A common work-around is to get this node to point to a landing page that simply lists the associated child items. This is all very well, except it creates a headache for site maintenance. Every time a child is added, removed or changed, there is duplication of work to be done on the landing page.

Another alternative is to get the landing page to say something innocuous such as "Welcome to the [name of parent menu item] section of the website", which is rather naff to say the least as it adds nothing of interest to the site visitor.

My question therefore, is this: Is there an alternative module out there that avoids all the problems of non-linking menu items but instead can dynamically generate the required child links for the landing page?

PJSchroeder’s picture

I would love to have this built into Drupal, I am running 7 and have tried both special menu item, and firstchild and neither worked.